diff options
Diffstat (limited to 'application/modules/ipxe/controllers/AuthController.php')
-rw-r--r-- | application/modules/ipxe/controllers/AuthController.php | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/application/modules/ipxe/controllers/AuthController.php b/application/modules/ipxe/controllers/AuthController.php index 27feff7..ba10e5c 100644 --- a/application/modules/ipxe/controllers/AuthController.php +++ b/application/modules/ipxe/controllers/AuthController.php @@ -14,6 +14,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { protected $session; protected $sessionMapper; protected $error; + protected $httpmode; public function init() { $this->_helper->layout->disableLayout(); @@ -35,6 +36,14 @@ class Ipxe_AuthController extends Zend_Controller_Action { $this->error = "session"; } } + + if(isset($_SERVER['HTTPS'])) + { + if ($_SERVER['HTTPS'] == 'on') + $this->httpmode = 'https'; + else + $this->httpmode = 'http'; + } } public function serialAction() { @@ -78,12 +87,12 @@ class Ipxe_AuthController extends Zend_Controller_Action { $result = "#!ipxe\n"; if(isset($this->session)) { - $result .= "set filename http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$this->session->getAlphasessionID()."/error/".$this->error."\n"; + $result .= "set filename ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$this->session->getAlphasessionID()."/error/".$this->error."\n"; $result .= ":start\n"; - $result .= "chain http://".$_SERVER['HTTP_HOST']."/ipxe/vesamenu.c32 \${filename}\n"; + $result .= "chain ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/vesamenu.c32 \${filename}\n"; $result .= "goto start\n"; } else { - $result .= "chain http://".$_SERVER['HTTP_HOST']."/ipxe/vesamenu.c32 http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/serialnumber/$serialnumber/mac/$mac/error/$this->error\n"; + $result .= "chain ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/vesamenu.c32 http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/serialnumber/$serialnumber/mac/$mac/error/$this->error\n"; } header("Content-Length: ".(strlen($result))); echo $result; @@ -101,7 +110,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { $result .= "clear password\n"; $result .= "login\n"; $result .= "isset \${username} || set username null\n"; - $result .= "chain http://\${username:uristring}:\${password:uristring}@".$_SERVER['HTTP_HOST']."/ipxe/auth/login/alpha/".$alpha."\n"; + $result .= "chain ".$this->httpmode."://\${username:uristring}:\${password:uristring}@".$_SERVER['HTTP_HOST']."/ipxe/auth/login/alpha/".$alpha."\n"; header("Content-Length: ".(strlen($result))); echo $result; exit; @@ -111,7 +120,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { header('WWW-Authenticate: Basic realm=""'); header('HTTP/1.0 401 Unauthorized'); $result = "#!ipxe\n"; - $result .= "set filename http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$this->session->getAlphasessionID()."/error/login\n"; + $result .= "set filename ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$this->session->getAlphasessionID()."/error/login\n"; header("Content-Length: ".(strlen($result))); echo $result; exit; @@ -151,7 +160,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { header('Content-Type: text/plain'); $result = "#!ipxe\n"; - $result .= "set filename http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$this->session->getAlphasessionID()."/error/".$this->error."\n"; + $result .= "set filename ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$this->session->getAlphasessionID()."/error/".$this->error."\n"; header("Content-Length: ".(strlen($result))); echo $result; exit; @@ -174,7 +183,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { header('Content-Type: text/plain'); $result = "#!ipxe\n"; - $result .= "set filename http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$alpha."/error/".$this->error."\n"; + $result .= "set filename ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$alpha."/error/".$this->error."\n"; header("Content-Length: ".(strlen($result))); echo $result; exit; @@ -196,7 +205,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { header('Content-Type: text/plain'); $result = "#!ipxe\n"; - $result .= "set filename http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$alpha."/error/".$this->error."\n"; + $result .= "set filename ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$alpha."/error/".$this->error."\n"; header("Content-Length: ".(strlen($result))); echo $result; exit; @@ -219,7 +228,7 @@ class Ipxe_AuthController extends Zend_Controller_Action { header('Content-Type: text/plain'); $result = "#!ipxe\n"; - $result .= "set filename http://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$alpha."/error/".$this->error."\n"; + $result .= "set filename ".$this->httpmode."://".$_SERVER['HTTP_HOST']."/ipxe/resource/getvesamenuconfig/alpha/".$alpha."/error/".$this->error."\n"; header("Content-Length: ".(strlen($result))); echo $result; exit; |