original_string: protected function _generateHeader(Request $request, $credentials)
      {
          $path = $request->getUri()->getPath();
          $a1 = md5($credentials['username'] . ':' . $credentials['realm'] . ':' . $credentials['password']);
          $a2 = md5($request->getMethod() . ':' . $path);
          $nc = null;
  
          if (empty($credentials['qop'])) {
              $response = md5($a1 . ':' . $credentials['nonce'] . ':' . $a2);
          } else {
              $credentials['cnonce'] = uniqid();
              $nc = sprintf('%08x', $credentials['nc']++);
              $response = md5($a1 . ':' . $credentials['nonce'] . ':' . $nc . ':' . $credentials['cnonce'] . ':auth:' . $a2);
          }
  
          $authHeader = 'Digest ';
          $authHeader .= 'username="' . str_replace(['\\', '"'], ['\\\\', '\\"'], $credentials['username']) . '", ';
          $authHeader .= 'realm="' . $credentials['realm'] . '", ';
          $authHeader .= 'nonce="' . $credentials['nonce'] . '", ';
          $authHeader .= 'uri="' . $path . '", ';
          $authHeader .= 'response="' . $response . '"';
          if (!empty($credentials['opaque'])) {
              $authHeader .= ', opaque="' . $credentials['opaque'] . '"';
          }
          if (!empty($credentials['qop'])) {
              $authHeader .= ', qop="auth", nc=' . $nc . ', cnonce="' . $credentials['cnonce'] . '"';
          }
  
          return $authHeader;
      }
code: protected function _generateHeader(Request $request, $credentials)
      {
          $path = $request->getUri()->getPath();
          $a1 = md5($credentials['username'] . ':' . $credentials['realm'] . ':' . $credentials['password']);
          $a2 = md5($request->getMethod() . ':' . $path);
          $nc = null;
  
          if (empty($credentials['qop'])) {
              $response = md5($a1 . ':' . $credentials['nonce'] . ':' . $a2);
          } else {
              $credentials['cnonce'] = uniqid();
              $nc = sprintf('%08x', $credentials['nc']++);
              $response = md5($a1 . ':' . $credentials['nonce'] . ':' . $nc . ':' . $credentials['cnonce'] . ':auth:' . $a2);
          }
  
          $authHeader = 'Digest ';
          $authHeader .= 'username="' . str_replace(['\\', '"'], ['\\\\', '\\"'], $credentials['username']) . '", ';
          $authHeader .= 'realm="' . $credentials['realm'] . '", ';
          $authHeader .= 'nonce="' . $credentials['nonce'] . '", ';
          $authHeader .= 'uri="' . $path . '", ';
          $authHeader .= 'response="' . $response . '"';
          if (!empty($credentials['opaque'])) {
              $authHeader .= ', opaque="' . $credentials['opaque'] . '"';
          }
          if (!empty($credentials['qop'])) {
              $authHeader .= ', qop="auth", nc=' . $nc . ', cnonce="' . $credentials['cnonce'] . '"';
          }
  
          return $authHeader;
      }
code_tokens: protected function _generateHeader ( Request $ request , $ credentials ) { $ path = $ request -> getUri ( ) -> getPath ( ) ; $ a1 = md5 ( $ credentials [ 'username' ] . ':' . $ credentials [ 'realm' ] . ':' . $ credentials [ 'password' ] ) ; $ a2 = md5 ( $ request -> getMethod ( ) . ':' . $ path ) ; $ nc = null ; if ( empty ( $ credentials [ 'qop' ] ) ) { $ response = md5 ( $ a1 . ':' . $ credentials [ 'nonce' ] . ':' . $ a2 ) ; } else { $ credentials [ 'cnonce' ] = uniqid ( ) ; $ nc = sprintf ( '%08x' , $ credentials [ 'nc' ] ++ ) ; $ response = md5 ( $ a1 . ':' . $ credentials [ 'nonce' ] . ':' . $ nc . ':' . $ credentials [ 'cnonce' ] . ':auth:' . $ a2 ) ; } $ authHeader = 'Digest ' ; $ authHeader .= 'username="' . str_replace ( [ '\\' , '"' ] , [ '\\\\' , '\\"' ] , $ credentials [ 'username' ] ) . '", ' ; $ authHeader .= 'realm="' . $ credentials [ 'realm' ] . '", ' ; $ authHeader .= 'nonce="' . $ credentials [ 'nonce' ] . '", ' ; $ authHeader .= 'uri="' . $ path . '", ' ; $ authHeader .= 'response="' . $ response . '"' ; if ( ! empty ( $ credentials [ 'opaque' ] ) ) { $ authHeader .= ', opaque="' . $ credentials [ 'opaque' ] . '"' ; } if ( ! empty ( $ credentials [ 'qop' ] ) ) { $ authHeader .= ', qop="auth", nc=' . $ nc . ', cnonce="' . $ credentials [ 'cnonce' ] . '"' ; } return $ authHeader ; }
docstring: Generate the header Authorization
  
  @param \Cake\Http\Client\Request $request The request object.
  @param array $credentials Authentication credentials.
  @return string
docstring_tokens: Generate the header Authorization