42 struct pEnt {
const char *pname;
int pnlen;} pTab[] =
43 {{
"https://", 8}, {
"http://", 7},
44 {
"roots://", 8}, {
"root://", 7},
45 {
"xroots://", 9}, {
"xroot://", 8},
48 int pTNum =
sizeof(pTab)/
sizeof(pEnt);
58 const char *dot = index(hName,
'.');
60 if (dot)
return dot+1;
72 if (*pname ==
'x' || *pname ==
'r')
73 for (
int i = xrBeg; i < pTNum; i++)
74 if (!strncmp(pname, pTab[i].pname, pTab[i].pnlen))
return true;
88 for (i = 0; i < pTNum; i++)
89 {
if (!strncmp(pname, pTab[i].pname, pTab[i].pnlen-adj))
break;}
90 if (i >= pTNum)
return 0;
91 plen = pTab[i].pnlen-adj;
105 do {seppos = index(str, sep);
107 {
if (!(*(seppos+1)))
return false;
110 if (!strlen(str))
return false;
113 }
while(seppos && *str);
static const char * getDomain(const char *hName)
static const char * valProt(const char *pname, int &plen, int adj=0)
static bool is4Xrootd(const char *pname)
static bool Vectorize(char *str, std::vector< char * > &vec, char sep)