original_string: function _challengeResponse($lm = false)
      {
          if ($lm) {
              $hash = $this->lmPasswordHash();
          } else {
              $hash = $this->ntPasswordHash();
          }
  
          while (strlen($hash) < 21) {
              $hash .= "\0";
          }
  
          $td = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_ECB, '');
          $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
          $key = $this->_desAddParity(substr($hash, 0, 7));
          mcrypt_generic_init($td, $key, $iv);
          $resp1 = mcrypt_generic($td, $this->challenge);
          mcrypt_generic_deinit($td);
  
          $key = $this->_desAddParity(substr($hash, 7, 7));
          mcrypt_generic_init($td, $key, $iv);
          $resp2 = mcrypt_generic($td, $this->challenge);
          mcrypt_generic_deinit($td);
  
          $key = $this->_desAddParity(substr($hash, 14, 7));
          mcrypt_generic_init($td, $key, $iv);
          $resp3 = mcrypt_generic($td, $this->challenge);
          mcrypt_generic_deinit($td);
          mcrypt_module_close($td);
  
          return $resp1 . $resp2 . $resp3;
      }
code: function _challengeResponse($lm = false)
      {
          if ($lm) {
              $hash = $this->lmPasswordHash();
          } else {
              $hash = $this->ntPasswordHash();
          }
  
          while (strlen($hash) < 21) {
              $hash .= "\0";
          }
  
          $td = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_ECB, '');
          $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
          $key = $this->_desAddParity(substr($hash, 0, 7));
          mcrypt_generic_init($td, $key, $iv);
          $resp1 = mcrypt_generic($td, $this->challenge);
          mcrypt_generic_deinit($td);
  
          $key = $this->_desAddParity(substr($hash, 7, 7));
          mcrypt_generic_init($td, $key, $iv);
          $resp2 = mcrypt_generic($td, $this->challenge);
          mcrypt_generic_deinit($td);
  
          $key = $this->_desAddParity(substr($hash, 14, 7));
          mcrypt_generic_init($td, $key, $iv);
          $resp3 = mcrypt_generic($td, $this->challenge);
          mcrypt_generic_deinit($td);
          mcrypt_module_close($td);
  
          return $resp1 . $resp2 . $resp3;
      }
code_tokens: function _challengeResponse ( $ lm = false ) { if ( $ lm ) { $ hash = $ this -> lmPasswordHash ( ) ; } else { $ hash = $ this -> ntPasswordHash ( ) ; } while ( strlen ( $ hash ) < 21 ) { $ hash .= "\0" ; } $ td = mcrypt_module_open ( MCRYPT_DES , '' , MCRYPT_MODE_ECB , '' ) ; $ iv = mcrypt_create_iv ( mcrypt_enc_get_iv_size ( $ td ) , MCRYPT_RAND ) ; $ key = $ this -> _desAddParity ( substr ( $ hash , 0 , 7 ) ) ; mcrypt_generic_init ( $ td , $ key , $ iv ) ; $ resp1 = mcrypt_generic ( $ td , $ this -> challenge ) ; mcrypt_generic_deinit ( $ td ) ; $ key = $ this -> _desAddParity ( substr ( $ hash , 7 , 7 ) ) ; mcrypt_generic_init ( $ td , $ key , $ iv ) ; $ resp2 = mcrypt_generic ( $ td , $ this -> challenge ) ; mcrypt_generic_deinit ( $ td ) ; $ key = $ this -> _desAddParity ( substr ( $ hash , 14 , 7 ) ) ; mcrypt_generic_init ( $ td , $ key , $ iv ) ; $ resp3 = mcrypt_generic ( $ td , $ this -> challenge ) ; mcrypt_generic_deinit ( $ td ) ; mcrypt_module_close ( $ td ) ; return $ resp1 . $ resp2 . $ resp3 ; }
docstring: Generates the response.
  
  Generates the response using DES.
  
  @param  bool  $lm  wether generating LAN-Manager-Response
  @access private
  @return string
docstring_tokens: Generates the response .