Go to the documentation of this file. 1 #ifndef __XRDNETIF_HH__
2 #define __XRDNETIF_HH__
58 void Display(
const char *pfx=
"=====> ");
177 static int GetIF(
char *buff,
int blen,
const char **eText=0,
bool show=
false);
192 static int GetIF(
char *&ifline,
const char **eText=0,
bool show=
false);
253 {
if (ifT >=
ifAny)
return 0x0f;
404 bool IsOkName(
const char *ifn,
short &ifIdx);
short iLen
Definition: XrdNetIF.hh:414
static const char * Name(ifType ifT)
Definition: XrdNetIF.hh:266
static const int haveNoGI
ifList == 0 && getifaddrs() is not supported
Definition: XrdNetIF.hh:148
static const int havePub4
ifList == 0 && public ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:158
static netType netRoutes
Definition: XrdNetIF.hh:445
int ifPort
Definition: XrdNetIF.hh:431
char iVal[6]
Definition: XrdNetIF.hh:415
Definition: XrdNetIF.hh:72
short hALen
Definition: XrdNetIF.hh:392
netType
Definition: XrdNetIF.hh:320
Definition: XrdNetIF.hh:320
~XrdNetIF()
Definition: XrdNetIF.hh:387
Definition: XrdNetIF.hh:426
static XrdSysError * eDest
Definition: XrdNetIF.hh:437
static int GetIF(XrdOucTList **ifList, const char **eText=0)
pInfo()
Definition: XrdNetIF.hh:428
int GetName(const char *&name, ifType ifT=PublicV6)
Definition: XrdNetIF.hh:102
char ifAvail
Definition: XrdNetIF.hh:434
ifData()
Definition: XrdNetIF.hh:417
Definition: XrdNetAddrInfo.hh:53
static bool V4LinkLocal(struct sockaddr *saP)
static char Mask(ifType ifT)
Definition: XrdNetIF.hh:252
int Port()
Definition: XrdNetIF.hh:276
Definition: XrdNetIF.hh:391
bool prvt
Definition: XrdNetIF.hh:395
Definition: XrdNetIF.hh:73
Definition: XrdNetIF.hh:74
Definition: XrdNetIF.hh:66
char hDest[64]
Definition: XrdNetIF.hh:397
static void SetRPIPA(bool rval)
static const int havePrv4
ifList == 0 && private ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:154
bool SetIF64(bool retVal)
bool GenAddrs(ifAddrs &ifTab, XrdNetAddrInfo *src)
XrdNetIF()
Constructor and Destructor.
Definition: XrdNetIF.hh:385
bool ifxDNS[ifMax]
Definition: XrdNetIF.hh:423
static const int havePub6
ifList == 0 && public ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:160
short hDLen
Definition: XrdNetIF.hh:393
static const int havePrv6
ifList == 0 && private ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:156
Definition: XrdNetIF.hh:412
static bool InDomain(XrdNetAddrInfo *epaddr)
ifData * ifName[ifMax]
Definition: XrdNetIF.hh:421
ifType
The enum that is used to index into ifData to get appropriate interface.
Definition: XrdNetIF.hh:64
static char * SetDomain()
char val[7]
Definition: XrdNetIF.hh:427
static void SetMsgs(XrdSysError *erp)
int GetName(char *nbuff, int &nport, ifType ifT=PublicV6)
Definition: XrdNetIF.hh:120
static void PortDefault(int pnum=1094)
static ifData ifNull
Definition: XrdNetIF.hh:447
char ifMask
Definition: XrdNetIF.hh:433
char * ifBuff
Definition: XrdNetIF.hh:424
static bool IsOkName(const char *ifn, short &ifIdx)
ifData * ifDest[ifMax]
Definition: XrdNetIF.hh:422
Definition: XrdNetIF.hh:70
bool ipV6
Definition: XrdNetIF.hh:394
static char * ifCfg[2]
Definition: XrdNetIF.hh:439
static const int haveIPv4
ifList == 0 && non-local ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:150
Definition: XrdNetIF.hh:320
Definition: XrdNetIF.hh:64
short ifRoute
Definition: XrdNetIF.hh:432
Definition: XrdNetIF.hh:75
Definition: XrdNetIF.hh:68
static ifType GetIFType(bool conIPv4, bool hasIP64, bool pvtIP)
Definition: XrdNetIF.hh:204
~ifData()
Definition: XrdNetIF.hh:418
static int dfPort
Definition: XrdNetIF.hh:446
struct XrdNetIF::pInfo portSfx
Definition: XrdNetIF.hh:320
static const char * ifTName[ifMax]
Definition: XrdNetIF.hh:441
bool HasDest(ifType ifT=PublicV6)
Definition: XrdNetIF.hh:221
static void Routing(netType nettype)
Definition: XrdNetIF.hh:48
static const char * ifMaskVec
Definition: XrdNetIF.hh:443
static char * myDomain
Definition: XrdNetIF.hh:438
char len
Definition: XrdNetIF.hh:426
Definition: XrdNetIF.hh:71
static void Privatize(ifType &x)
Definition: XrdNetIF.hh:284
Definition: XrdSysError.hh:89
int GetDest(char *dest, int dlen, ifType ifT=PublicV6, bool prefn=false)
void Display(const char *pfx="=====> ")
Definition: XrdNetIF.hh:320
Definition: XrdNetIF.hh:65
bool GenIF(XrdNetAddrInfo **src, int srcnum)
char Mask()
Definition: XrdNetIF.hh:242
bool SetIF(XrdNetAddrInfo *src, const char *ifList, int port=0, netType nettype=netDefault)
Definition: XrdNetIF.hh:69
static const int haveIPv6
ifList == 0 && non-local ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:152
static bool rPIPA
Definition: XrdNetIF.hh:448
static bool SetIFNames(char *ifnames)
Definition: XrdOucTList.hh:41
char hAddr[64]
Definition: XrdNetIF.hh:396
Definition: XrdNetIF.hh:67