![]() |
XRootD
|
#include <XrdHttpReq.hh>
Public Types | |
enum | ReqType { rtUnset = -1 , rtUnknown = 0 , rtMalformed , rtGET , rtHEAD , rtPUT , rtOPTIONS , rtPATCH , rtDELETE , rtPROPFIND , rtMKCOL , rtMOVE , rtPOST } |
These are the HTTP/DAV requests that we support. More... | |
Public Member Functions | |
XrdHttpReq (XrdHttpProtocol *protinstance, const XrdHttpReadRangeHandler::Configuration &rcfg) | |
virtual | ~XrdHttpReq () |
void | addCgi (const std::string &key, const std::string &value) |
void | appendOpaque (XrdOucString &s, XrdSecEntity *secent, char *hash, time_t tnow) |
std::string | buildPartialHdr (long long bytestart, long long byteend, long long filesize, char *token) |
Build a partial header for a multipart response. More... | |
std::string | buildPartialHdrEnd (char *token) |
Build the closing part for a multipart response. More... | |
virtual bool | Data (XrdXrootd::Bridge::Context &info, const struct iovec *iovP, int iovN, int iovL, bool final) |
virtual bool | Done (XrdXrootd::Bridge::Context &info) |
the result context More... | |
virtual bool | Error (XrdXrootd::Bridge::Context &info, int ecode, const char *etext) |
virtual int | File (XrdXrootd::Bridge::Context &info, int dlen) |
int | parseBody (char *body, long long len) |
Parse the body of a request, assuming that it's XML and that it's entirely in memory. More... | |
int | parseFirstLine (char *line, int len) |
Parse the first line of the header. More... | |
int | parseLine (char *line, int len) |
Parse the header. More... | |
int | ProcessHTTPReq () |
virtual bool | Redir (XrdXrootd::Bridge::Context &info, int port, const char *hname) |
int | ReqReadV (const XrdHttpIOList &cl) |
Prepare the buffers for sending a readv request. More... | |
virtual void | reset () |
void | setTransferStatusHeader (std::string &header) |
const std::string & | userAgent () const |
![]() | |
Result () | |
Constructor & Destructor. More... | |
virtual | ~Result () |
virtual void | Free (Bridge::Context &info, char *buffP, int buffL) |
virtual bool | Wait (Bridge::Context &info, int wtime, const char *wtext) |
virtual Bridge::Result * | WaitResp (Bridge::Context &info, int wtime, const char *wtext) |
Public Attributes | |
std::map< std::string, std::string > | allheaders |
bool | closeAfterError |
int | depth |
std::string | destination |
The destination field specified in the req. More... | |
std::string | etext |
char | fhandle [4] |
long | filectime |
long | fileflags |
long | filemodtime |
long long | filesize |
bool | final |
true -> final result More... | |
bool | fopened |
std::string | hdr2cgistr |
Additional opaque info that may come from the hdr2cgi directive. More... | |
bool | headerok |
Tells if we have finished reading the header. More... | |
std::string | host |
The host field specified in the req. More... | |
int | iovL |
byte count More... | |
int | iovN |
array count More... | |
const struct iovec * | iovP |
The latest data chunks got from the xrd layer. These are valid only inside the callbacks! More... | |
bool | keepalive |
long long | length |
bool | m_appended_asize {false} |
Track whether we already appended the oss.asize argument for PUTs. More... | |
bool | m_appended_hdr2cgistr |
std::string | m_digest_header |
The computed digest for the HTTP response header. More... | |
XrdHttpChecksumHandler::XrdHttpChecksumRawPtr | m_req_cksum = nullptr |
The checksum that was ran for this request. More... | |
std::string | m_req_digest |
The requested digest type. More... | |
XrdOucString | m_resource_with_digest |
int | mScitag |
XrdOucEnv * | opaque |
The opaque data, after parsing. More... | |
std::vector< readahead_list > | ralist |
bool | readClosing |
XrdHttpReadRangeHandler | readRangeHandler |
Tracking the next ranges of data to read during GET. More... | |
XrdOucString | redirdest |
int | reqstate |
State machine to talk to the bridge. More... | |
ReqType | request |
The request we got. More... | |
std::string | requestverb |
XrdOucString | resource |
The resource specified by the request, stripped of opaque data. More... | |
XrdOucString | resourceplusopaque |
The resource specified by the request, including all the opaque data. More... | |
unsigned int | rwOpDone |
To coordinate multipart responses across multiple calls. More... | |
unsigned int | rwOpPartialDone |
bool | sendcontinue |
std::string | stringresp |
If we want to give a string as a response, we compose it here. More... | |
long long | writtenbytes |
In a long write, we track where we have arrived. More... | |
XErrorCode | xrderrcode |
ClientRequest | xrdreq |
The last issued xrd request, often pending. More... | |
XResponseType | xrdresp |
The last response data we got. More... | |
Definition at line 71 of file XrdHttpReq.hh.
enum XrdHttpReq::ReqType |
These are the HTTP/DAV requests that we support.
Enumerator | |
---|---|
rtUnset | |
rtUnknown | |
rtMalformed | |
rtGET | |
rtHEAD | |
rtPUT | |
rtOPTIONS | |
rtPATCH | |
rtDELETE | |
rtPROPFIND | |
rtMKCOL | |
rtMOVE | |
rtPOST |
Definition at line 224 of file XrdHttpReq.hh.
|
inline |
Definition at line 168 of file XrdHttpReq.hh.
References depth, fopened, headerok, length, mScitag, opaque, and writtenbytes.
|
virtual |
Definition at line 110 of file XrdHttpReq.cc.
References reset().
void XrdHttpReq::addCgi | ( | const std::string & | key, |
const std::string & | value | ||
) |
Definition at line 794 of file XrdHttpReq.cc.
References hdr2cgistr.
Referenced by parseLine().
void XrdHttpReq::appendOpaque | ( | XrdOucString & | s, |
XrdSecEntity * | secent, | ||
char * | hash, | ||
time_t | tnow | ||
) |
Definition at line 637 of file XrdHttpReq.cc.
References XrdSecEntity::creds, XrdSecEntity::credslen, XrdSecEntity::endorsements, XrdOucEnv::Env(), XrdSecEntity::grps, hdr2cgistr, XrdSecEntity::host, XrdSecEntity::moninfo, XrdSecEntity::name, opaque, quote(), XrdSecEntity::role, and XrdSecEntity::vorg.
Referenced by XrdHttpProtocol::Process(), ProcessHTTPReq(), and Redir().
std::string XrdHttpReq::buildPartialHdr | ( | long long | bytestart, |
long long | byteend, | ||
long long | filesize, | ||
char * | token | ||
) |
Build a partial header for a multipart response.
Definition at line 430 of file XrdHttpReq.cc.
std::string XrdHttpReq::buildPartialHdrEnd | ( | char * | token | ) |
Build the closing part for a multipart response.
Definition at line 440 of file XrdHttpReq.cc.
|
virtual |
Effect a client data response.
The Data() method is called when Run() resulted in a successful data response. The method should rewrite the data and send it to the client using the associated XrdLink object. As an example, 1) Result::Data(info, iovP, iovN, iovL) is called. 2) Inspect iovP, rewrite the data. 3) Send the response: info->linkP->Send(new_iovP, new_iovN, new_iovL); 4) Handle send errors and cleanup(e.g. deallocate storage). 5) Return, the exchange is now complete.
info | the context associated with the result. |
iovP | a pointer to the iovec structure containing the xrootd data response about to be sent to the client. The request header is not included in the iovec structure. The elements of this structure must not be modified by the method. |
iovN | the number of elements in the iovec structure array. |
iovL | total number of data bytes that would be sent to the client. This is simply the sum of all the lengths in the iovec. |
final | True is this is the final result. Otherwise, this is a partial result (i.e. kXR_oksofar) and more data will result causing additional callbacks. |
info | the result context |
iovP | pointer to data array |
iovN | array count |
iovL | byte count |
final | true -> final result |
Implements XrdXrootd::Bridge::Result.
Definition at line 448 of file XrdHttpReq.cc.
References iovL, iovN, iovP, kXR_ok, reset(), TRACE, and xrdresp.
|
virtual |
the result context
Effect a client acknowledgement.
The Done() method is called when Run() resulted in success and there is no associated data for the client (equivalent to a simple kXR_ok response).
info | the context associated with the result. |
Implements XrdXrootd::Bridge::Result.
Definition at line 494 of file XrdHttpReq.cc.
References iovN, kXR_ok, reset(), TRACE, and xrdresp.
|
virtual |
Effect a client error response.
The Error() method is called when an error was encountered while processing the Run() request. The error should be reflected to the client.
info | the context associated with the result. |
ecode | the "kXR" error code describing the nature of the error. The code is in host byte format. |
etext | a null terminated string describing the error in human terms |
info | the result context |
ecode | the "kXR" error code |
etext | associated error message |
Implements XrdXrootd::Bridge::Result.
Definition at line 511 of file XrdHttpReq.cc.
References escapeXML(), etext, ClientRequest::header, kXR_error, kXR_isDirectory, kXR_open, request, ClientRequestHdr::requestid, reset(), rtGET, TRACE, xrderrcode, xrdreq, and xrdresp.
|
virtual |
Notify callback that a sendfile() request is pending.
The File() method is called when Run() resulted in a sendfile response (i.e. sendfile() would have been used to send data to the client). This allows the callback to reframe the sendfile() data using the Send() method in the passed context object (see class Context above).
info | the context associated with the result. |
dlen | total number of data bytes that would be sent to the client. |
info | the result context |
dlen | byte count |
Implements XrdXrootd::Bridge::Result.
Definition at line 470 of file XrdHttpReq.cc.
References XrdHttpReadRangeHandler::NotifyError(), XrdHttpReadRangeHandler::NotifyReadResult(), readRangeHandler, XrdXrootd::Bridge::Context::Send(), and TRACE.
int XrdHttpReq::parseBody | ( | char * | body, |
long long | len | ||
) |
Parse the body of a request, assuming that it's XML and that it's entirely in memory.
Definition at line 94 of file XrdHttpReq.cc.
Referenced by ProcessHTTPReq().
int XrdHttpReq::parseFirstLine | ( | char * | line, |
int | len | ||
) |
Parse the first line of the header.
Definition at line 261 of file XrdHttpReq.cc.
References keepalive, MAX_TK_LEN, request, requestverb, rtDELETE, rtGET, rtHEAD, rtMalformed, rtMKCOL, rtMOVE, rtOPTIONS, rtPATCH, rtPOST, rtPROPFIND, rtPUT, and rtUnknown.
Referenced by XrdHttpProtocol::Process().
int XrdHttpReq::parseLine | ( | char * | line, |
int | len | ||
) |
Parse the header.
Definition at line 116 of file XrdHttpReq.cc.
References addCgi(), allheaders, depth, destination, XrdOucEnv::Get(), XrdHttpProtocol::hdr2cgimap, keepalive, length, m_req_digest, MAX_TK_LEN, opaque, XrdHttpReadRangeHandler::ParseContentRange(), XrdHttpProtocol::pmarkHandle, readRangeHandler, request, rtMalformed, sendcontinue, and trim().
Referenced by XrdHttpProtocol::Process().
int XrdHttpReq::ProcessHTTPReq | ( | ) |
Crunch an http request. Return values: 0->call Process again 1->request processed -1->error
If we have to add extra header information, add it here.
Definition at line 939 of file XrdHttpReq.cc.
References XrdOucString::append(), appendOpaque(), ClientMvRequest::arg1len, XrdOucString::beginswith(), XrdHttpProtocol::Bridge, XrdOucString::c_str(), XrdHttpProtocol::cksumHandler, ClientRequest::close, closeAfterError, XrdHttpProtocol::StaticPreloadInfo::data, DEBUG, depth, destination, ClientRequest::dirlist, ClientDirlistRequest::dlen, ClientMkdirRequest::dlen, ClientMvRequest::dlen, ClientOpenRequest::dlen, ClientReadRequest::dlen, ClientRmRequest::dlen, ClientRmdirRequest::dlen, ClientStatRequest::dlen, ClientWriteRequest::dlen, XrdHttpProtocol::doChksum(), XrdHttpProtocol::doStat(), XrdHttpProtocol::embeddedstatic, XrdOucString::endswith(), XrdOucString::erasefromend(), ClientCloseRequest::fhandle, ClientReadRequest::fhandle, ClientWriteRequest::fhandle, fhandle, fileflags, filesize, fopened, XrdHttpChecksumHandler::getChecksumToRun(), XrdHttpChecksum::getXRootDConfigDigestName(), hdr2cgistr, host, XrdHttpReadRangeHandler::isSingleRange(), keepalive, kXR_close, kXR_delete, kXR_dirlist, kXR_dstat, kXR_gr, kXR_gw, kXR_isDir, kXR_isManager, kXR_mkdir, kXR_mkdirpath, kXR_mkpath, kXR_mv, kXR_new, kXR_open, kXR_open_read, kXR_open_wrto, kXR_or, kXR_read, kXR_retstat, kXR_rm, kXR_rmdir, kXR_stat, kXR_ur, kXR_uw, kXR_write, XrdHttpProtocol::StaticPreloadInfo::len, length, XrdOucString::length(), XrdHttpProtocol::listdeny, XrdHttpProtocol::listredir, m_appended_asize, m_appended_hdr2cgistr, m_req_cksum, m_req_digest, m_resource_with_digest, ClientRequest::mkdir, ClientOpenRequest::mode, ClientRequest::mv, XrdHttpProtocol::myRole, XrdHttpReadRangeHandler::NextReadList(), obfuscateAuth(), ClientReadRequest::offset, ClientWriteRequest::offset, opaque, ClientRequest::open, ClientDirlistRequest::options, ClientMkdirRequest::options, ClientOpenRequest::options, parseBody(), parseURL(), XrdHttpExtHandler::ProcessReq(), XrdOucEnv::Put(), quote(), ralist, ClientRequest::read, readClosing, readRangeHandler, ReqReadV(), reqstate, request, ClientCloseRequest::requestid, ClientDirlistRequest::requestid, ClientMkdirRequest::requestid, ClientMvRequest::requestid, ClientOpenRequest::requestid, ClientReadRequest::requestid, ClientRmRequest::requestid, ClientRmdirRequest::requestid, ClientStatRequest::requestid, ClientWriteRequest::requestid, reset(), resource, resourceplusopaque, ClientReadRequest::rlen, ClientRequest::rm, ClientRequest::rmdir, rtDELETE, rtGET, rtHEAD, rtMalformed, rtMKCOL, rtMOVE, rtOPTIONS, rtPATCH, rtPROPFIND, rtPUT, rtUnknown, rtUnset, XrdXrootd::Bridge::Run(), sendcontinue, XrdXrootd::Bridge::setSF(), ClientRequest::stat, XrdHttpProtocol::staticpreload, XrdHttpProtocol::staticredir, TRACE, TRACE_DEBUG, TRACEI, TRACING, ClientRequest::write, writtenbytes, and xrdreq.
Referenced by XrdHttpProtocol::Process().
|
virtual |
Redirect the client to another host:port.
The Redir() method is called when the client must be redirected to another host.
info | the context associated with the result. |
port | the port number in host byte format. |
hname | the DNS name of the host or IP address is IPV4 or IPV6 format (i.e. "n.n.n.n" or "[ipv6_addr]"). |
info | the result context |
port | the port number |
hname | the destination host |
Implements XrdXrootd::Bridge::Result.
Definition at line 541 of file XrdHttpReq.cc.
References appendOpaque(), XrdOucString::c_str(), calcHashes(), XrdHttpProtocol::isdesthttps, keepalive, obfuscateAuth(), quote(), redirdest, request, reset(), resource, rtGET, XrdHttpProtocol::SecEntity, XrdHttpProtocol::secretkey, and TRACE.
int XrdHttpReq::ReqReadV | ( | const XrdHttpIOList & | cl | ) |
Prepare the buffers for sending a readv request.
Definition at line 393 of file XrdHttpReq.cc.
References ClientReadVRequest::dlen, ClientRequest::header, kXR_readv, ralist, ClientRequest::readv, ClientRequestHdr::requestid, and xrdreq.
Referenced by ProcessHTTPReq().
|
virtual |
State machine to talk to the bridge
Definition at line 2815 of file XrdHttpReq.cc.
References allheaders, closeAfterError, depth, destination, etext, filesize, fopened, hdr2cgistr, headerok, host, iovL, iovN, iovP, keepalive, kXR_noErrorYet, kXR_noResponsesYet, length, m_appended_asize, m_appended_hdr2cgistr, m_digest_header, m_req_cksum, m_req_digest, m_resource_with_digest, mScitag, opaque, ralist, readClosing, readRangeHandler, redirdest, reqstate, request, XrdHttpReadRangeHandler::reset(), resource, rtUnset, sendcontinue, stringresp, TRACE, writtenbytes, xrderrcode, xrdreq, and xrdresp.
Referenced by ~XrdHttpReq(), Data(), Done(), Error(), XrdHttpProtocol::Process(), ProcessHTTPReq(), and Redir().
void XrdHttpReq::setTransferStatusHeader | ( | std::string & | header | ) |
Definition at line 2117 of file XrdHttpReq.cc.
|
inline |
Definition at line 215 of file XrdHttpReq.hh.
Referenced by XrdHttpProtocol::Process().
std::map<std::string, std::string> XrdHttpReq::allheaders |
Definition at line 246 of file XrdHttpReq.hh.
Referenced by parseLine(), and reset().
bool XrdHttpReq::closeAfterError |
Definition at line 265 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
int XrdHttpReq::depth |
Definition at line 269 of file XrdHttpReq.hh.
Referenced by XrdHttpReq(), parseLine(), ProcessHTTPReq(), and reset().
std::string XrdHttpReq::destination |
The destination field specified in the req.
Definition at line 275 of file XrdHttpReq.hh.
Referenced by parseLine(), ProcessHTTPReq(), and reset().
std::string XrdHttpReq::etext |
Definition at line 310 of file XrdHttpReq.hh.
char XrdHttpReq::fhandle[4] |
Definition at line 324 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq().
long XrdHttpReq::filectime |
Definition at line 323 of file XrdHttpReq.hh.
long XrdHttpReq::fileflags |
Definition at line 321 of file XrdHttpReq.hh.
Referenced by XrdHttpProtocol::doStat(), and ProcessHTTPReq().
long XrdHttpReq::filemodtime |
Definition at line 322 of file XrdHttpReq.hh.
Referenced by XrdHttpProtocol::doStat().
long long XrdHttpReq::filesize |
Definition at line 320 of file XrdHttpReq.hh.
Referenced by XrdHttpProtocol::doStat(), ProcessHTTPReq(), and reset().
bool XrdHttpReq::final |
true -> final result
Definition at line 317 of file XrdHttpReq.hh.
bool XrdHttpReq::fopened |
Definition at line 325 of file XrdHttpReq.hh.
Referenced by XrdHttpReq(), ProcessHTTPReq(), and reset().
std::string XrdHttpReq::hdr2cgistr |
Additional opaque info that may come from the hdr2cgi directive.
Definition at line 291 of file XrdHttpReq.hh.
Referenced by addCgi(), appendOpaque(), ProcessHTTPReq(), and reset().
bool XrdHttpReq::headerok |
Tells if we have finished reading the header.
Definition at line 257 of file XrdHttpReq.hh.
Referenced by XrdHttpReq(), XrdHttpProtocol::Process(), and reset().
std::string XrdHttpReq::host |
The host field specified in the req.
Definition at line 273 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
int XrdHttpReq::iovL |
int XrdHttpReq::iovN |
array count
Definition at line 315 of file XrdHttpReq.hh.
const struct iovec* XrdHttpReq::iovP |
The latest data chunks got from the xrd layer. These are valid only inside the callbacks!
pointer to data array
Definition at line 314 of file XrdHttpReq.hh.
bool XrdHttpReq::keepalive |
Definition at line 267 of file XrdHttpReq.hh.
Referenced by parseFirstLine(), parseLine(), ProcessHTTPReq(), Redir(), and reset().
long long XrdHttpReq::length |
Definition at line 268 of file XrdHttpReq.hh.
Referenced by XrdHttpExtReq::XrdHttpExtReq(), XrdHttpReq(), parseLine(), ProcessHTTPReq(), and reset().
bool XrdHttpReq::m_appended_asize {false} |
Track whether we already appended the oss.asize argument for PUTs.
Definition at line 294 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
bool XrdHttpReq::m_appended_hdr2cgistr |
Definition at line 292 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
std::string XrdHttpReq::m_digest_header |
The computed digest for the HTTP response header.
Definition at line 288 of file XrdHttpReq.hh.
Referenced by reset().
XrdHttpChecksumHandler::XrdHttpChecksumRawPtr XrdHttpReq::m_req_cksum = nullptr |
The checksum that was ran for this request.
Definition at line 281 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
std::string XrdHttpReq::m_req_digest |
The requested digest type.
Definition at line 278 of file XrdHttpReq.hh.
Referenced by parseLine(), ProcessHTTPReq(), and reset().
XrdOucString XrdHttpReq::m_resource_with_digest |
The checksum algorithm is specified as part of the opaque data in the URL. Hence, when a digest is generated to satisfy a request, we cache the tweaked URL in this data member.
Definition at line 286 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
int XrdHttpReq::mScitag |
Definition at line 336 of file XrdHttpReq.hh.
Referenced by XrdHttpExtReq::XrdHttpExtReq(), XrdHttpReq(), and reset().
XrdOucEnv* XrdHttpReq::opaque |
The opaque data, after parsing.
Definition at line 251 of file XrdHttpReq.hh.
Referenced by XrdHttpExtReq::XrdHttpExtReq(), XrdHttpReq(), appendOpaque(), parseLine(), XrdHttpProtocol::Process(), ProcessHTTPReq(), and reset().
std::vector<readahead_list> XrdHttpReq::ralist |
Definition at line 197 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), ReqReadV(), and reset().
bool XrdHttpReq::readClosing |
Definition at line 261 of file XrdHttpReq.hh.
Referenced by ProcessHTTPReq(), and reset().
XrdHttpReadRangeHandler XrdHttpReq::readRangeHandler |
Tracking the next ranges of data to read during GET.
Definition at line 260 of file XrdHttpReq.hh.
Referenced by File(), parseLine(), ProcessHTTPReq(), and reset().
XrdOucString XrdHttpReq::redirdest |
Definition at line 311 of file XrdHttpReq.hh.
int XrdHttpReq::reqstate |
State machine to talk to the bridge.
Definition at line 331 of file XrdHttpReq.hh.
Referenced by XrdHttpProtocol::Process(), ProcessHTTPReq(), and reset().
ReqType XrdHttpReq::request |
The request we got.
Definition at line 241 of file XrdHttpReq.hh.
Referenced by Error(), parseFirstLine(), parseLine(), XrdHttpProtocol::Process(), ProcessHTTPReq(), Redir(), and reset().
std::string XrdHttpReq::requestverb |
Definition at line 242 of file XrdHttpReq.hh.
Referenced by parseFirstLine().
XrdOucString XrdHttpReq::resource |
The resource specified by the request, stripped of opaque data.
Definition at line 249 of file XrdHttpReq.hh.
Referenced by XrdHttpExtReq::XrdHttpExtReq(), XrdHttpProtocol::Process(), ProcessHTTPReq(), Redir(), and reset().
XrdOucString XrdHttpReq::resourceplusopaque |
The resource specified by the request, including all the opaque data.
Definition at line 253 of file XrdHttpReq.hh.
Referenced by XrdHttpExtReq::XrdHttpExtReq(), and ProcessHTTPReq().
unsigned int XrdHttpReq::rwOpDone |
To coordinate multipart responses across multiple calls.
Definition at line 302 of file XrdHttpReq.hh.
unsigned int XrdHttpReq::rwOpPartialDone |
Definition at line 302 of file XrdHttpReq.hh.
bool XrdHttpReq::sendcontinue |
Definition at line 270 of file XrdHttpReq.hh.
Referenced by parseLine(), ProcessHTTPReq(), and reset().
std::string XrdHttpReq::stringresp |
If we want to give a string as a response, we compose it here.
Definition at line 328 of file XrdHttpReq.hh.
Referenced by reset().
long long XrdHttpReq::writtenbytes |
In a long write, we track where we have arrived.
Definition at line 334 of file XrdHttpReq.hh.
Referenced by XrdHttpReq(), ProcessHTTPReq(), and reset().
XErrorCode XrdHttpReq::xrderrcode |
Definition at line 309 of file XrdHttpReq.hh.
ClientRequest XrdHttpReq::xrdreq |
The last issued xrd request, often pending.
Definition at line 305 of file XrdHttpReq.hh.
Referenced by XrdHttpProtocol::doChksum(), XrdHttpProtocol::doStat(), Error(), XrdHttpProtocol::Process(), ProcessHTTPReq(), ReqReadV(), and reset().
XResponseType XrdHttpReq::xrdresp |