1#ifndef __XRDNETUTILS_HH__
2#define __XRDNETUTILS_HH__
154const char *
GetAddrs(
const std::string &hSpec, std::vector<XrdNetAddr> &aVec,
178const char *
GetAddrs(std::vector<std::string> &hSVec,
179 std::vector<XrdNetAddr> &aVec,
181 unsigned int rotNum=0,
bool force=
false);
205int GetSokInfo(
int fd,
char *theAddr,
int theALen,
char &theType);
231 const char **eText=0);
256static int IPFormat(
const struct sockaddr *sAddr,
char *bP,
int bL,
int opts=0);
280static int IPFormat(
int fd,
char *bP,
int bL,
int opts=0);
300static bool Match(
const char *hName,
const char *pattern);
317static char *
MyHostName(
const char *eName=
"*unknown*",
const char **eText=0);
363static bool Parse(
const char *hSpec,
const char **hName,
const char **hNend,
364 const char **hPort,
const char **hPend);
376static int Port(
int fd,
const char **eText=0);
399static int ServPort(
const char *sName,
bool isUDP=
false,
const char **eText=0);
426static bool Singleton(
const char *hSpec,
const char **eText=0);
442 int *ordn=0,
unsigned int rotNum=0);
447const char *
GetHostPort(XrdNetSpace::hpSpec &aBuff,
const char *hSpec,
int pNum);
450static int setET(
const char **errtxt,
int rc);
#define XRDOUC_ENUM_OPERATORS(T)
Definition XrdOucEnum.hh:22
Definition XrdNetAddr.hh:42
Definition XrdNetUtils.hh:45
static const int NoPortRaw
Definition XrdNetUtils.hh:130
static const char * getMyFQN(const char *&myDom)
NetType
Definition XrdNetUtils.hh:339
@ qryINET
Only consider internet protocols via DNS.
Definition XrdNetUtils.hh:339
@ qryINIF
Only consider internet protocols via ifconfig.
Definition XrdNetUtils.hh:340
static int autoFamily
Definition XrdNetUtils.hh:451
static const char * GetAddrs(std::vector< std::string > &hSVec, std::vector< XrdNetAddr > &aVec, int *ordn=0, AddrOpts opts=allIPMap, unsigned int rotNum=0, bool force=false)
static int Port(int fd, const char **eText=0)
static int ProtoID(const char *pName)
static const char * GetAddrs(const char *hSpec, XrdNetAddr *aListP[], int &aListN, AddrOpts opts=allIPMap, int pNum=PortInSpec)
static int Encode(const XrdNetSockAddr *sadr, char *buff, int blen, int port=-1)
NetProt
Definition XrdNetUtils.hh:331
@ hasPub4
Definition XrdNetUtils.hh:335
@ hasIP64
Definition XrdNetUtils.hh:334
@ hasPub6
Definition XrdNetUtils.hh:336
@ hasIPv6
Definition XrdNetUtils.hh:333
@ hasNone
Unable to determine available protocols.
Definition XrdNetUtils.hh:331
@ hasIPv4
Definition XrdNetUtils.hh:332
static void GetHints(XrdNetSpace::hpSpec &aBuff, AddrOpts opts)
static const char * GetAddrs(const std::string &hSpec, std::vector< XrdNetAddr > &aVec, int *ordn=0, AddrOpts opts=allIPMap, int pNum=PortInSpec)
static int setET(const char **errtxt, int rc)
static const char * GetAInfo(XrdNetSpace::hpSpec &aBuff)
static XrdOucTList * Hosts(const char *hSpec, int hPort=-1, int hWant=8, int *sPort=0, const char **eText=0)
static const int PortInSpec
Definition XrdNetUtils.hh:129
static const char * GetHostPort(XrdNetSpace::hpSpec &aBuff, const char *hSpec, int pNum)
static bool Singleton(const char *hSpec, const char **eText=0)
static int IPFormat(int fd, char *bP, int bL, int opts=0)
static int ServPort(const char *sName, bool isUDP=false, const char **eText=0)
static int autoHints
Definition XrdNetUtils.hh:452
~XrdNetUtils()
Destructor.
Definition XrdNetUtils.hh:438
static const int oldFmt
Definition XrdNetUtils.hh:254
static int IPFormat(const struct sockaddr *sAddr, char *bP, int bL, int opts=0)
static void FillAddr(XrdNetSpace::hpSpec &aBuff, XrdNetAddr *aVec, int *ordn=0, unsigned int rotNum=0)
static char * MyHostName(const char *eName="*unknown*", const char **eText=0)
static int SetAuto(AddrOpts aOpts=allIPMap)
XrdNetUtils()
Constructor.
Definition XrdNetUtils.hh:432
static NetProt NetConfig(NetType netquery=qryINET, const char **eText=0)
static const int noPort
Definition XrdNetUtils.hh:253
static int Decode(XrdNetSockAddr *sadr, const char *buff, int blen)
static bool Match(const char *hName, const char *pattern)
static int GetSokInfo(int fd, char *theAddr, int theALen, char &theType)
AddrOpts
Definition XrdNetUtils.hh:123
@ prefAuto
Definition XrdNetUtils.hh:125
@ allIPv64
Definition XrdNetUtils.hh:123
@ prefIPv6
Definition XrdNetUtils.hh:124
@ allV4Map
Definition XrdNetUtils.hh:123
@ onlyUDP
Definition XrdNetUtils.hh:126
@ order46
Definition XrdNetUtils.hh:125
@ allIPMap
Definition XrdNetUtils.hh:123
@ order64
Definition XrdNetUtils.hh:125
@ onlyIPv4
Definition XrdNetUtils.hh:124
@ onlyIPv6
Definition XrdNetUtils.hh:124
static bool Parse(const char *hSpec, const char **hName, const char **hNend, const char **hPort, const char **hPend)
Definition XrdOucTList.hh:42
Definition XrdNetUtils.hh:42
Definition XrdNetSockAddr.hh:43