|
xrootd
|
#include <XrdNetSocket.hh>

Public Member Functions | |
| XrdNetSocket (XrdSysError *erobj=0, int SockFileDesc=-1) | |
| ~XrdNetSocket () | |
| int | Open (const char *path, int port=-1, int flags=0, int sockbuffsz=0) |
| int | Accept (int ms=-1) |
| void | Close () |
| int | Detach () |
| int | LastError () |
| const char * | Peername (struct sockaddr **InetAddr=0) |
| int | SockNum () |
Static Public Member Functions | |
| static XrdNetSocket * | Create (XrdSysError *Say, const char *path, const char *fn, mode_t mode, int isudp=0) |
| static int | setOpts (int fd, int options, XrdSysError *eDest=0) |
| static int | setWindow (int fd, int Windowsz, XrdSysError *eDest=0) |
| static int | getWindow (int fd, int &Windowsz, XrdSysError *eDest=0) |
| static const char * | socketAddr (XrdSysError *Say, const char *dest, struct sockaddr **sockAP, int &sockAL) |
| static char * | socketPath (XrdSysError *Say, char *inbuff, const char *path, const char *fn, mode_t mode) |
Private Attributes | |
| int | SockFD |
| int | ErrCode |
| struct sockaddr | PeerAddr |
| char * | PeerName |
| XrdSysError * | eroute |
| XrdNetSocket::XrdNetSocket | ( | XrdSysError * | erobj = 0, |
| int | SockFileDesc = -1 |
||
| ) |
| XrdNetSocket::~XrdNetSocket | ( | ) | [inline] |
References Close().
| int XrdNetSocket::Accept | ( | int | ms = -1 | ) |
References ErrCode, SockFD, POLLIN, POLLRDNORM, POLLRDBAND, POLLPRI, POLLHUP, poll(), pollfd::revents, eroute, and XrdSysError::Emsg().
Referenced by XrdCmsAdmin::Start(), and XrdXrootdAdmin::Start().
| void XrdNetSocket::Close | ( | ) |
| XrdNetSocket * XrdNetSocket::Create | ( | XrdSysError * | Say, |
| const char * | path, | ||
| const char * | fn, | ||
| mode_t | mode, | ||
| int | isudp = 0 |
||
| ) | [static] |
References XRDNET_FIFO, S_IFIFO, S_IFSOCK, XRDNET_UDPSOCKET, XRDNET_SERVER, S_IRWXU, S_IRWXG, eMsg, socketPath(), XrdNetSocket(), SockFD, open(), LastError(), Open(), and XrdSysError::Emsg().
Referenced by XrdBwmLogger::Start(), XrdCmsConfig::setupServer(), XrdCnsConfig::Configure(), mainConfig(), XrdFrmXfrDaemon::Pong(), XrdOfsEvr::Init(), XrdOfsEvs::Start(), and XrdXrootdProtocol::Configure().
| int XrdNetSocket::Detach | ( | ) |
References SockFD, and PeerName.
Referenced by XrdBwmLogger::Start(), XrdCmsAdmin::Notes(), XrdCnsConfig::Configure(), mainConfig(), XrdFrmXfrDaemon::Pong(), main(), XrdNet::Bind(), XrdNet::Connect(), XrdOfsEvr::Init(), and XrdOfsEvs::Start().
| int XrdNetSocket::getWindow | ( | int | fd, |
| int & | Windowsz, | ||
| XrdSysError * | eDest = 0 |
||
| ) | [static] |
References socklen_t, Sokdata_t, and XrdSysError::Emsg().
Referenced by XrdNet::WSize().
| int XrdNetSocket::LastError | ( | ) | [inline] |
References ErrCode.
Referenced by main(), XrdNet::Bind(), and Create().
| int XrdNetSocket::Open | ( | const char * | path, |
| int | port = -1, |
||
| int | flags = 0, |
||
| int | sockbuffsz = 0 |
||
| ) |
References XRDNET_UDPSOCKET, SOCKLEN_t, SockFD, Err, ErrCode, sockaddr_un::sun_path, sockaddr_un::sun_family, XRDNET_SERVER, unlink(), XrdSysDNS::Host2Dest(), XrdSysDNS::getHostAddr(), XrdSysDNS::setPort(), eroute, XrdSysError::Emsg(), Close(), EHOSTUNREACH, setOpts(), setWindow(), Sokdata_t, XRDNET_BKLG, XRDNETSOCKET_MAXBKLG, S_IRWXU, XRDNET_TOUT, XrdNetConnect::Connect(), PeerName, PeerAddr, and XRDNET_NOEMSG.
Referenced by main(), XrdNet::Bind(), XrdNet::Connect(), and Create().
| const char * XrdNetSocket::Peername | ( | struct sockaddr ** | InetAddr = 0 | ) |
References SockFD, eroute, XrdSysError::Emsg(), PeerName, XrdSysDNS::Peername(), PeerAddr, and ErrCode.
Referenced by XrdNet::Connect().
| int XrdNetSocket::setOpts | ( | int | fd, |
| int | options, | ||
| XrdSysError * | eDest = 0 |
||
| ) | [static] |
References SOCKLEN_t, XrdSysDNS::getProtoID(), XRDNETSOCKET_LINGER, XRDNET_NOCLOSEX, fcntl(), F_SETFD, FD_CLOEXEC, XrdSysError::Emsg(), XRDNET_UDPSOCKET, XRDNET_NOLINGER, Sokdata_t, XRDNET_KEEPALIVE, and XRDNET_DELAY.
Referenced by XrdClientSock::TryConnect_low(), XrdCmsAdmin::Relay(), XrdCmsAdmin::Start(), XrdNet::do_Accept_TCP(), and Open().
| int XrdNetSocket::setWindow | ( | int | fd, |
| int | Windowsz, | ||
| XrdSysError * | eDest = 0 |
||
| ) | [static] |
References SOCKLEN_t, Sokdata_t, and XrdSysError::Emsg().
Referenced by Open().
| const char * XrdNetSocket::socketAddr | ( | XrdSysError * | Say, |
| const char * | dest, | ||
| struct sockaddr ** | sockAP, | ||
| int & | sockAL | ||
| ) | [static] |
References XrdMonCtrCollector::port, sockaddr_un::sun_path, XrdSysError::Emsg(), sockaddr_un::sun_family, XrdSysDNS::Host2Dest(), XrdSysDNS::getHostAddr(), and XrdSysDNS::setPort().
Referenced by XrdNetMsg::XrdNetMsg(), and XrdNetMsg::Send().
| char * XrdNetSocket::socketPath | ( | XrdSysError * | Say, |
| char * | inbuff, | ||
| const char * | path, | ||
| const char * | fn, | ||
| mode_t | mode | ||
| ) | [static] |
References S_IXUSR, S_IXGRP, S_IFIFO, S_IFSOCK, S_IRWXU, S_IRWXG, stat(), strlcpy(), XrdSysError::Emsg(), rindex, XrdOucUtils::makePath(), access(), and W_OK.
Referenced by XrdCmsSupervisor::Init(), and Create().
| int XrdNetSocket::SockNum | ( | ) | [inline] |
References SockFD.
XrdSysError* XrdNetSocket::eroute [private] |
Referenced by XrdNetSocket(), Accept(), Open(), and Peername().
int XrdNetSocket::ErrCode [private] |
Referenced by XrdNetSocket(), Accept(), Close(), Open(), Peername(), and LastError().
struct sockaddr XrdNetSocket::PeerAddr [private] |
Referenced by Open(), and Peername().
char* XrdNetSocket::PeerName [private] |
Referenced by XrdNetSocket(), Close(), Detach(), Open(), and Peername().
int XrdNetSocket::SockFD [private] |
Referenced by XrdNetSocket(), Accept(), Close(), Create(), Detach(), Open(), Peername(), and SockNum().
1.7.5