Go to the documentation of this file.
32 #include <sys/types.h>
151 int &numstall,
int &numtardy);
271 int Peek(
char *buff,
int blen,
int timeout=-1);
284 int Recv(
char *buff,
int blen);
301 int Recv(
char *buff,
int blen,
int timeout);
317 int Recv(
const struct iovec *
iov,
int iocnt,
int timeout);
334 int RecvAll(
char *buff,
int blen,
int timeout=-1);
360 int Send(
const char *buff,
int blen);
374 int Send(
const struct iovec *
iov,
int iocnt,
int bytes=0);
417 void setID(
const char *userid,
int procid);
498 static int Stats(
char *buff,
int blen,
bool do_sync=0);
526 int Terminate(
const char *owner,
int fdnum,
unsigned int inst);
int Wait4Data(int timeout)
int Peek(char *buff, int blen, int timeout=-1)
int UseCnt() const
Return link's reference count.
unsigned int Inst() const
Definition: XrdLink.hh:218
bool Register(const char *hName)
bool setTLS(bool enable, XrdTlsContext *ctx=0)
Enable or disable TLS on the link.
Definition: XrdNetAddrInfo.hh:195
void setID(const char *userid, int procid)
XrdNetAddrInfo * AddrInfo()
bool isInstance(unsigned int inst) const
void Shutdown(bool getLock)
Definition: XrdNetAddrInfo.hh:54
int Send(const sfVec *sdP, int sdn)
void setProtName(const char *name)
int Close(bool defer=false)
bool isBridged
Definition: XrdLink.hh:595
XrdProtocol * getProtocol()
Obtain current protocol object pointer.
int Client(char *buff, int blen)
XrdProtocol * setProtocol(XrdProtocol *pp, bool runit=false, bool push=false)
Definition: XrdTlsContext.hh:37
void * rsvd1[3]
Definition: XrdLink.hh:591
void setLocation(XrdNetAddrInfo::LocInfo &loc)
const char * Host() const
Definition: XrdLink.hh:204
XrdTlsPeerCerts * getPeerCerts()
bool hasTLS() const
Definition: XrdLink.hh:565
Definition: XrdLinkXeq.hh:53
int Terminate(const char *owner, int fdnum, unsigned int inst)
Definition: XrdPollInfo.hh:37
char * ID
Pointer to the client's link identity.
Definition: XrdLink.hh:210
char rsvd2[2]
Definition: XrdLink.hh:597
void Serialize()
Wait for all outstanding requests to be completed on the link.
static int getName(int &curr, char *bname, int blen, XrdLinkMatch *who=0)
int Send(const char *buff, int blen)
~XrdLink()
Definition: XrdLink.hh:585
const char * Name() const
unsigned int Instance
Definition: XrdLink.hh:594
Definition: XrdLink.hh:52
void armBridge()
Mark this link as an in-memory communications bridge (internal use only).
static int Stats(char *buff, int blen, bool do_sync=0)
Definition: XrdLinkMatch.hh:36
Definition: XrdOucIOVec.hh:65
int RecvAll(char *buff, int blen, int timeout=-1)
char * HostName
Definition: XrdLink.hh:593
const XrdNetAddr * NetAddr() const
int Recv(const struct iovec *iov, int iocnt, int timeout)
static bool sfOK
Definition: XrdLink.hh:387
Definition: XrdProtocol.hh:125
XrdOucSFVec sfVec
Definition: XrdLink.hh:389
void syncStats(int *ctime=0)
Definition: XrdTlsPeerCerts.hh:35
int getIOStats(long long &inbytes, long long &outbytes, int &numstall, int &numtardy)
int Recv(char *buff, int blen)
Definition: XrdOucSFVec.hh:43
XrdLinkXeq & linkXQ
Definition: XrdLink.hh:592
int Send(const struct iovec *iov, int iocnt, int bytes=0)
Definition: XrdNetAddr.hh:42
int Recv(char *buff, int blen, int timeout)
static XrdLink * Find(int &curr, XrdLinkMatch *who=0)
bool hasBridge() const
Definition: XrdLink.hh:553
bool isTLS
Definition: XrdLink.hh:596
int setEtext(const char *text)
time_t timeCon() const
Return the time the link was made active (i.e. time of connection).
void Enable()
Enable the link to field interrupts.