1 #ifndef __XRDNETIF_HH__
2 #define __XRDNETIF_HH__
167 if (name.size() > 255)
return false;
223 static int GetIF(
char *buff,
int blen,
const char **eText=0,
bool show=
false);
238 static int GetIF(
char *&ifline,
const char **eText=0,
bool show=
false);
299 {
if (ifT >=
ifAny)
return 0x0f;
Definition: XrdNetAddrInfo.hh:54
Definition: XrdNetIF.hh:50
char * ifBuff
Definition: XrdNetIF.hh:470
static char * ifCfg[2]
Definition: XrdNetIF.hh:489
static const int haveNoGI
ifList == 0 && getifaddrs() is not supported
Definition: XrdNetIF.hh:194
bool ifxDNS[ifMax]
Definition: XrdNetIF.hh:469
static void SetRPIPA(bool rval)
char Mask()
Definition: XrdNetIF.hh:288
bool SetIF(XrdNetAddrInfo *src, const char *ifList, int port=0, netType nettype=netDefault, const char *xName=0)
bool SetPublicName(const std::string &name)
Definition: XrdNetIF.hh:164
static bool V4LinkLocal(struct sockaddr *saP)
static const int haveIPv4
ifList == 0 && non-local ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:196
int GetName(char *nbuff, int &nport, ifType ifT=PublicV6)
Definition: XrdNetIF.hh:133
static int dfPort
Definition: XrdNetIF.hh:496
ifData * ifDest[ifMax]
Definition: XrdNetIF.hh:468
struct XrdNetIF::pInfo portSfx
XrdNetIF()
Constructor and Destructor.
Definition: XrdNetIF.hh:431
static const char * GetDomain()
static bool IsOkName(const char *ifn, short &ifIdx)
static XrdSysError * eDest
Definition: XrdNetIF.hh:486
void Display(const char *pfx="=====> ")
static const char * ifTName[ifMax]
Definition: XrdNetIF.hh:491
static const char * ifMaskVec
Definition: XrdNetIF.hh:493
int GetPublicName(char *nbuff, int &nport)
Definition: XrdNetIF.hh:150
static void Routing(netType nettype)
static void PortDefault(int pnum=1094)
std::string m_PublicName
Definition: XrdNetIF.hh:483
char ifAvail
Definition: XrdNetIF.hh:480
static char Mask(ifType ifT)
Definition: XrdNetIF.hh:298
int ifPort
Definition: XrdNetIF.hh:477
int Port()
Definition: XrdNetIF.hh:322
~XrdNetIF()
Definition: XrdNetIF.hh:433
static bool InDomain(XrdNetAddrInfo *epaddr)
bool HasDest(ifType ifT=PublicV6)
Definition: XrdNetIF.hh:267
static const char * myDomain
Definition: XrdNetIF.hh:488
ifData * ifName[ifMax]
Definition: XrdNetIF.hh:467
static const int havePub6
ifList == 0 && public ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:206
static int GetIF(char *&ifline, const char **eText=0, bool show=false)
static ifType GetIFType(bool conIPv4, bool hasIP64, bool pvtIP)
Definition: XrdNetIF.hh:250
static int GetIF(XrdOucTList **ifList, const char **eText=0)
static netType netRoutes
Definition: XrdNetIF.hh:495
bool GenAddrs(ifAddrs &ifTab, XrdNetAddrInfo *src)
static const char * Name(ifType ifT)
Definition: XrdNetIF.hh:312
int GetPublicDest(char *dest, size_t dlen)
int GetName(const char *&name, ifType ifT=PublicV6)
Definition: XrdNetIF.hh:115
static const int havePub4
ifList == 0 && public ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:204
bool SetIF64(bool retVal)
short ifRoute
Definition: XrdNetIF.hh:478
bool GenAddrs(ifAddrs &ifTab, const char *hName, bool wantV6)
int GetDest(char *dest, int dlen, ifType ifT=PublicV6, bool prefn=false)
static const int haveIPv6
ifList == 0 && non-local ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:198
static void SetMsgs(XrdSysError *erp)
ifType
The enum that is used to index into ifData to get appropriate interface.
Definition: XrdNetIF.hh:65
@ PrivateV4
Definition: XrdNetIF.hh:66
@ ifMax
Definition: XrdNetIF.hh:75
@ Public46
Definition: XrdNetIF.hh:71
@ PublicV4
Definition: XrdNetIF.hh:65
@ Private64
Definition: XrdNetIF.hh:74
@ ifAny
Definition: XrdNetIF.hh:76
@ Public64
Definition: XrdNetIF.hh:73
@ PrivateIF
Definition: XrdNetIF.hh:69
@ ifNum
Definition: XrdNetIF.hh:70
@ Private46
Definition: XrdNetIF.hh:72
@ PrivateV6
Definition: XrdNetIF.hh:68
@ PublicV6
Definition: XrdNetIF.hh:67
char ifMask
Definition: XrdNetIF.hh:479
static const int havePrv6
ifList == 0 && private ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:202
static bool SetIFNames(char *ifnames)
static void Privatize(ifType &x)
Definition: XrdNetIF.hh:330
bool GenIF(XrdNetAddrInfo **src, int srcnum, const char *xName=0)
static ifData ifNull
Definition: XrdNetIF.hh:497
netType
Definition: XrdNetIF.hh:364
@ netSplit
Definition: XrdNetIF.hh:364
@ netDefault
Definition: XrdNetIF.hh:364
@ netCommon
Definition: XrdNetIF.hh:364
@ netLocal
Definition: XrdNetIF.hh:364
static const int havePrv4
ifList == 0 && private ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:200
static bool rPIPA
Definition: XrdNetIF.hh:498
static int GetIF(char *buff, int blen, const char **eText=0, bool show=false)
Definition: XrdOucTList.hh:42
Definition: XrdSysError.hh:90
Definition: XrdNetIF.hh:438
bool prvt
Definition: XrdNetIF.hh:441
char hDest[64]
Definition: XrdNetIF.hh:443
char hAddr[64]
Definition: XrdNetIF.hh:442
bool ipV6
Definition: XrdNetIF.hh:440
short hDLen
Definition: XrdNetIF.hh:439
short hALen
Definition: XrdNetIF.hh:438
Definition: XrdNetIF.hh:459
~ifData()
Definition: XrdNetIF.hh:464
char iVal[6]
Definition: XrdNetIF.hh:461
ifData()
Definition: XrdNetIF.hh:463
short iLen
Definition: XrdNetIF.hh:460
Definition: XrdNetIF.hh:472
char val[7]
Definition: XrdNetIF.hh:473
pInfo()
Definition: XrdNetIF.hh:474
char len
Definition: XrdNetIF.hh:472