00001 ////////////////////////////////////////////////////////////////////////// 00002 // // 00003 // XrdClientProtocol // 00004 // // 00005 // Author: Fabrizio Furano (INFN Padova, 2004) // 00006 // Adapted from TXNetFile (root.cern.ch) originally done by // 00007 // Alvise Dorigo, Fabrizio Furano // 00008 // INFN Padova, 2003 // 00009 // // 00010 // utility functions to deal with the protocol // 00011 // // 00012 ////////////////////////////////////////////////////////////////////////// 00013 00014 // $Id: XrdClientProtocol.hh 22437 2008-03-04 14:35:16Z rdm $ 00015 00016 #ifndef XRD_CPROTOCOL_H 00017 #define XRD_CPROTOCOL_H 00018 00019 #include "XProtocol/XProtocol.hh" 00020 00021 00022 void clientMarshall(ClientRequest* str); 00023 void clientMarshallReadAheadList(readahead_list *buf_list, kXR_int32 dlen); 00024 void clientUnMarshallReadAheadList(readahead_list *buf_list, kXR_int32 dlen); 00025 void clientUnmarshall(struct ServerResponseHeader* str); 00026 00027 void ServerResponseHeader2NetFmt(struct ServerResponseHeader *srh); 00028 void ServerInitHandShake2HostFmt(struct ServerInitHandShake *srh); 00029 00030 bool isRedir(struct ServerResponseHeader *ServerResponse); 00031 00032 char *convertRequestIdToChar(kXR_unt16 requestid); 00033 00034 void PutFilehandleInRequest(ClientRequest* str, char *fHandle); 00035 00036 char *convertRespStatusToChar(kXR_unt16 status); 00037 00038 void smartPrintClientHeader(ClientRequest* hdr); 00039 void smartPrintServerHeader(struct ServerResponseHeader* hdr); 00040 00041 00042 #endif