1#ifndef __XRD_LINKXEQ_H__
2#define __XRD_LINKXEQ_H__
61int Client(
char *buff,
int blen);
63int Close(
bool defer=
false);
69 int &numstall,
int &numtardy)
85const char *
Name()
const {
return (
const char *)
Lname;}
90int Peek(
char *buff,
int blen,
int timeout=-1);
92int Recv(
char *buff,
int blen);
93int Recv(
char *buff,
int blen,
int timeout);
94int Recv(
const struct iovec *
iov,
int iocnt,
int timeout);
96int RecvAll(
char *buff,
int blen,
int timeout=-1);
100int Send(
const char *buff,
int blen);
101int Send(
const struct iovec *
iov,
int iocnt,
int bytes=0);
105void setID(
const char *userid,
int procid);
119static int Stats(
char *buff,
int blen,
bool do_sync=
false);
123int TLS_Peek(
char *Buff,
int Blen,
int timeout);
127int TLS_Recv(
char *Buff,
int Blen,
int timeout,
bool havelock=
false);
129int TLS_Recv(
const struct iovec *
iov,
int iocnt,
int timeout);
133int TLS_Send(
const char *Buff,
int Blen);
135int TLS_Send(
const struct iovec *
iov,
int iocnt,
int bytes);
149int RecvIOV(
const struct iovec *
iov,
int iocnt);
151int sendData(
const char *Buff,
int Blen);
152int SendIOV(
const struct iovec *
iov,
int iocnt,
int bytes);
155bool TLS_Write(
const char *Buff,
int Blen);
static const char * TraceID
int TLS_Send(const char *Buff, int Blen)
int TLS_Error(const char *act, XrdTls::RC rc)
int TLS_Peek(char *Buff, int Blen, int timeout)
int Client(char *buff, int blen)
XrdTlsPeerCerts * getPeerCerts()
XrdNetAddrInfo * AddrInfo()
const char * Name() const
int Close(bool defer=false)
int TLS_Recv(char *Buff, int Blen)
int sendData(const char *Buff, int Blen)
bool TLS_Write(const char *Buff, int Blen)
int SendIOV(const struct iovec *iov, int iocnt, int bytes)
XrdProtocol * setProtocol(XrdProtocol *pp, bool push)
static long long LinkCountTot
void Shutdown(bool getLock)
int Peek(char *buff, int blen, int timeout=-1)
static int getName(int &curr, char *bname, int blen, XrdLinkMatch *who=0)
static int Stats(char *buff, int blen, bool do_sync=false)
void setID(const char *userid, int procid)
int Recv(char *buff, int blen)
static long long LinkBytesIn
int TLS_RecvAll(char *Buff, int Blen, int timeout)
int Send(const char *buff, int blen)
int RecvIOV(const struct iovec *iov, int iocnt)
static long long LinkConTime
void setLocation(XrdNetAddrInfo::LocInfo &loc)
XrdProtocol * getProtocol()
int RecvAll(char *buff, int blen, int timeout=-1)
bool Register(const char *hName)
static XrdSysMutex statsMutex
void setProtName(const char *name)
const XrdNetAddr * NetAddr() const
static long long LinkBytesOut
void syncStats(int *ctime=0)
bool setTLS(bool enable, XrdTlsContext *ctx=0)
int getIOStats(long long &inbytes, long long &outbytes, int &numstall, int &numtardy)
Socket wrapper for TLS I/O.