1 #ifndef __XRDNETIF_HH__
2 #define __XRDNETIF_HH__
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;
Definition: XrdNetAddrInfo.hh:54
Definition: XrdNetIF.hh:49
char * ifBuff
Definition: XrdNetIF.hh:426
static char * ifCfg[2]
Definition: XrdNetIF.hh:442
static const int haveNoGI
ifList == 0 && getifaddrs() is not supported
Definition: XrdNetIF.hh:148
bool ifxDNS[ifMax]
Definition: XrdNetIF.hh:425
static void SetRPIPA(bool rval)
char Mask()
Definition: XrdNetIF.hh:242
bool SetIF(XrdNetAddrInfo *src, const char *ifList, int port=0, netType nettype=netDefault, const char *xName=0)
static bool V4LinkLocal(struct sockaddr *saP)
static const int haveIPv4
ifList == 0 && non-local ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:150
int GetName(char *nbuff, int &nport, ifType ifT=PublicV6)
Definition: XrdNetIF.hh:120
static int dfPort
Definition: XrdNetIF.hh:449
ifData * ifDest[ifMax]
Definition: XrdNetIF.hh:424
struct XrdNetIF::pInfo portSfx
XrdNetIF()
Constructor and Destructor.
Definition: XrdNetIF.hh:387
static const char * GetDomain()
static bool IsOkName(const char *ifn, short &ifIdx)
static XrdSysError * eDest
Definition: XrdNetIF.hh:439
void Display(const char *pfx="=====> ")
static const char * ifTName[ifMax]
Definition: XrdNetIF.hh:444
static const char * ifMaskVec
Definition: XrdNetIF.hh:446
static void Routing(netType nettype)
static void PortDefault(int pnum=1094)
char ifAvail
Definition: XrdNetIF.hh:436
static char Mask(ifType ifT)
Definition: XrdNetIF.hh:252
int ifPort
Definition: XrdNetIF.hh:433
int Port()
Definition: XrdNetIF.hh:276
~XrdNetIF()
Definition: XrdNetIF.hh:389
static bool InDomain(XrdNetAddrInfo *epaddr)
bool HasDest(ifType ifT=PublicV6)
Definition: XrdNetIF.hh:221
static const char * myDomain
Definition: XrdNetIF.hh:441
ifData * ifName[ifMax]
Definition: XrdNetIF.hh:423
static const int havePub6
ifList == 0 && public ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:160
static int GetIF(char *&ifline, const char **eText=0, bool show=false)
static ifType GetIFType(bool conIPv4, bool hasIP64, bool pvtIP)
Definition: XrdNetIF.hh:204
static int GetIF(XrdOucTList **ifList, const char **eText=0)
static netType netRoutes
Definition: XrdNetIF.hh:448
bool GenAddrs(ifAddrs &ifTab, XrdNetAddrInfo *src)
static const char * Name(ifType ifT)
Definition: XrdNetIF.hh:266
int GetName(const char *&name, ifType ifT=PublicV6)
Definition: XrdNetIF.hh:102
static const int havePub4
ifList == 0 && public ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:158
bool SetIF64(bool retVal)
short ifRoute
Definition: XrdNetIF.hh:434
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:152
static void SetMsgs(XrdSysError *erp)
ifType
The enum that is used to index into ifData to get appropriate interface.
Definition: XrdNetIF.hh:64
@ PrivateV4
Definition: XrdNetIF.hh:65
@ ifMax
Definition: XrdNetIF.hh:74
@ Public46
Definition: XrdNetIF.hh:70
@ PublicV4
Definition: XrdNetIF.hh:64
@ Private64
Definition: XrdNetIF.hh:73
@ ifAny
Definition: XrdNetIF.hh:75
@ Public64
Definition: XrdNetIF.hh:72
@ PrivateIF
Definition: XrdNetIF.hh:68
@ ifNum
Definition: XrdNetIF.hh:69
@ Private46
Definition: XrdNetIF.hh:71
@ PrivateV6
Definition: XrdNetIF.hh:67
@ PublicV6
Definition: XrdNetIF.hh:66
char ifMask
Definition: XrdNetIF.hh:435
static const int havePrv6
ifList == 0 && private ipv6 i/f found (or'd)
Definition: XrdNetIF.hh:156
static bool SetIFNames(char *ifnames)
static void Privatize(ifType &x)
Definition: XrdNetIF.hh:284
bool GenIF(XrdNetAddrInfo **src, int srcnum, const char *xName=0)
static ifData ifNull
Definition: XrdNetIF.hh:450
netType
Definition: XrdNetIF.hh:320
@ netSplit
Definition: XrdNetIF.hh:320
@ netDefault
Definition: XrdNetIF.hh:320
@ netCommon
Definition: XrdNetIF.hh:320
@ netLocal
Definition: XrdNetIF.hh:320
static const int havePrv4
ifList == 0 && private ipv4 i/f found (or'd)
Definition: XrdNetIF.hh:154
static bool rPIPA
Definition: XrdNetIF.hh:451
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:394
bool prvt
Definition: XrdNetIF.hh:397
char hDest[64]
Definition: XrdNetIF.hh:399
char hAddr[64]
Definition: XrdNetIF.hh:398
bool ipV6
Definition: XrdNetIF.hh:396
short hDLen
Definition: XrdNetIF.hh:395
short hALen
Definition: XrdNetIF.hh:394
Definition: XrdNetIF.hh:415
~ifData()
Definition: XrdNetIF.hh:420
char iVal[6]
Definition: XrdNetIF.hh:417
ifData()
Definition: XrdNetIF.hh:419
short iLen
Definition: XrdNetIF.hh:416
Definition: XrdNetIF.hh:428
char val[7]
Definition: XrdNetIF.hh:429
pInfo()
Definition: XrdNetIF.hh:430
char len
Definition: XrdNetIF.hh:428