|
xrootd
|
#include <XrdClientPSock.hh>


Public Member Functions | |
| XrdClientPSock (XrdClientUrlInfo host, int windowsize=0) | |
| virtual | ~XrdClientPSock () |
| void | BanSockDescr (Sockdescr s, Sockid newid) |
| void | UnBanSockDescr (Sockdescr s) |
| virtual int | RecvRaw (void *buffer, int length, Sockid substreamid=-1, Sockid *usedsubstreamid=0) |
| virtual int | SendRaw (const void *buffer, int length, Sockid substreamid=0) |
| virtual void | TryConnect (bool isUnix=0) |
| virtual Sockdescr | TryConnectParallelSock (int port, int windowsz, Sockid &tmpid) |
| virtual int | EstablishParallelSock (Sockid tmpsockid, Sockid newsockid) |
| virtual void | Disconnect () |
| virtual int | RemoveParallelSock (Sockid sockid) |
| virtual Sockid | GetSockIdHint (int reqsperstream) |
| virtual int | GetSockIdCount () |
| virtual void | PauseSelectOnSubstream (Sockid substreamid) |
| virtual void | RestartSelectOnSubstream (Sockid substreamid) |
Protected Member Functions | |
| virtual int | SaveSocket () |
Private Member Functions | |
| Sockdescr | GetSock (Sockid id) |
| Sockdescr | GetMainSock () |
| Sockid | GetSockId (Sockdescr sock) |
Private Attributes | |
| XrdSysRecMutex | fMutex |
| fdinfo | globalfdinfo |
| Sockid | lastsidhint |
| XrdClientVector< Sockid > | fSocketIdRepo |
| XrdOucRash< Sockid, Sockdescr > | fSocketPool |
| XrdOucRash< Sockdescr, Sockid > | fSocketNYHandshakedIdPool |
| XrdOucRash< Sockdescr, Sockid > | fSocketIdPool |
Friends | |
| class | XrdClientPhyConnection |
| XrdClientPSock::XrdClientPSock | ( | XrdClientUrlInfo | host, |
| int | windowsize = 0 |
||
| ) |
References lastsidhint, and XrdClientSock::fReinit_fd.
| XrdClientPSock::~XrdClientPSock | ( | ) | [virtual] |
References Disconnect().
Reimplemented from XrdClientSock.
References fMutex, fSocketNYHandshakedIdPool, and XrdOucRash::Rep().
Referenced by TryConnectParallelSock().
| void XrdClientPSock::Disconnect | ( | ) | [virtual] |
Reimplemented from XrdClientSock.
References fMutex, XrdClientSock::fConnected, FALSE, fSocketPool, XrdOucRash::Apply(), CloseSockFunc(), fSocketIdPool, XrdOucRash::Purge(), fSocketIdRepo, and XrdClientVector::Clear().
Referenced by ~XrdClientPSock().
Reimplemented from XrdClientSock.
References fMutex, GetSock(), fSocketPool, XrdOucRash::Del(), fSocketIdPool, XrdOucRash::Rep(), fSocketIdRepo, XrdClientVector::Push_back(), Info, and XrdClientDebug::kUSERDEBUG.
| Sockdescr XrdClientPSock::GetMainSock | ( | ) | [inline, private] |
References GetSock().
Referenced by RecvRaw(), and TryConnect().
References fMutex, fSocketPool, and XrdOucRash::Find().
Referenced by RecvRaw(), SendRaw(), RemoveParallelSock(), EstablishParallelSock(), PauseSelectOnSubstream(), RestartSelectOnSubstream(), and GetMainSock().
References fMutex, fSocketIdPool, and XrdOucRash::Find().
Referenced by RecvRaw().
| virtual int XrdClientPSock::GetSockIdCount | ( | ) | [inline, virtual] |
Reimplemented from XrdClientSock.
References fMutex, fSocketPool, and XrdOucRash::Num().
| int XrdClientPSock::GetSockIdHint | ( | int | reqsperstream | ) | [virtual] |
Reimplemented from XrdClientSock.
References fMutex, fSocketIdRepo, XrdClientVector::GetSize(), and lastsidhint.
| void XrdClientPSock::PauseSelectOnSubstream | ( | Sockid | substreamid | ) | [virtual] |
Reimplemented from XrdClientSock.
References fMutex, GetSock(), globalfdinfo, and fdinfo::fdset.
| int XrdClientPSock::RecvRaw | ( | void * | buffer, |
| int | length, | ||
| Sockid | substreamid = -1, |
||
| Sockid * | usedsubstreamid = 0 |
||
| ) | [virtual] |
Reimplemented from XrdClientSock.
References XrdClientSock::fConnected, Error, TXSOCK_ERR, GetMainSock(), XrdClientSock::fReinit_fd, Info, XrdClientDebug::kDUMPDEBUG, fMutex, globalfdinfo, fdinfo::fdset, fdinfo::maxfd, FdSetSockFuncPars::fdnfo, FdSetSockFuncPars::banned, fSocketNYHandshakedIdPool, fSocketPool, XrdOucRash::Apply(), FdSetSockFunc(), GetSock(), RemoveParallelSock(), TXSOCK_ERR_TIMEOUT, EnvGetLong, NAME_REQUESTTIMEOUT, XrdClientSock::ReinitFDTable(), XrdClientSock::fRDInterrupt, TXSOCK_ERR_INTERRUPT, EWOULDBLOCK, and GetSockId().
| int XrdClientPSock::RemoveParallelSock | ( | Sockid | sockid | ) | [virtual] |
Reimplemented from XrdClientSock.
References fMutex, GetSock(), close, fSocketIdPool, XrdOucRash::Del(), fSocketPool, fSocketIdRepo, XrdClientVector::GetSize(), and XrdClientVector::Erase().
Referenced by RecvRaw().
| void XrdClientPSock::RestartSelectOnSubstream | ( | Sockid | substreamid | ) | [virtual] |
Reimplemented from XrdClientSock.
References fMutex, GetSock(), globalfdinfo, and fdinfo::fdset.
| virtual int XrdClientPSock::SaveSocket | ( | ) | [inline, protected, virtual] |
Reimplemented from XrdClientSock.
References fMutex, fSocketPool, XrdOucRash::Find(), fSocketIdPool, XrdOucRash::Del(), XrdClientSock::fConnected, XrdClientSock::fRDInterrupt, and XrdClientSock::fWRInterrupt.
| int XrdClientPSock::SendRaw | ( | const void * | buffer, |
| int | length, | ||
| Sockid | substreamid = 0 |
||
| ) | [virtual] |
Reimplemented from XrdClientSock.
References GetSock(), Info, and XrdClientDebug::kDUMPDEBUG.
| void XrdClientPSock::TryConnect | ( | bool | isUnix = 0 | ) | [virtual] |
Reimplemented from XrdClientSock.
References XrdClientSock::fConnected, GetMainSock(), XrdClientSock::TryConnect_low(), fMutex, fSocketPool, XrdOucRash::Rep(), and fSocketIdPool.
| XrdClientSock::Sockdescr XrdClientPSock::TryConnectParallelSock | ( | int | port, |
| int | windowsz, | ||
| Sockid & | tmpid | ||
| ) | [virtual] |
Reimplemented from XrdClientSock.
References XrdClientSock::TryConnect_low(), fMutex, BanSockDescr(), fSocketPool, XrdOucRash::Rep(), and fSocketIdPool.
| void XrdClientPSock::UnBanSockDescr | ( | Sockdescr | s | ) | [inline, virtual] |
Reimplemented from XrdClientSock.
References fMutex, fSocketNYHandshakedIdPool, and XrdOucRash::Del().
friend class XrdClientPhyConnection [friend] |
Reimplemented from XrdClientSock.
XrdSysRecMutex XrdClientPSock::fMutex [private] |
XrdOucRash<Sockdescr, Sockid> XrdClientPSock::fSocketIdPool [private] |
Referenced by Disconnect(), TryConnect(), TryConnectParallelSock(), RemoveParallelSock(), EstablishParallelSock(), GetSockId(), and SaveSocket().
XrdClientVector<Sockid> XrdClientPSock::fSocketIdRepo [private] |
Referenced by Disconnect(), RemoveParallelSock(), EstablishParallelSock(), and GetSockIdHint().
Referenced by RecvRaw(), BanSockDescr(), and UnBanSockDescr().
XrdOucRash<Sockid, Sockdescr> XrdClientPSock::fSocketPool [private] |
Referenced by Disconnect(), RecvRaw(), TryConnect(), TryConnectParallelSock(), RemoveParallelSock(), EstablishParallelSock(), GetSock(), SaveSocket(), and GetSockIdCount().
fdinfo XrdClientPSock::globalfdinfo [private] |
Referenced by RecvRaw(), PauseSelectOnSubstream(), and RestartSelectOnSubstream().
Sockid XrdClientPSock::lastsidhint [private] |
Referenced by XrdClientPSock(), and GetSockIdHint().
1.7.5