From: Andrew Deason Date: Tue, 29 Dec 2009 20:45:51 +0000 (-0500) Subject: Return a cell name from afsconf_LookupServer X-Git-Tag: openafs-devel-1_5_69~75 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=6c9d49d096017f15306d0c9256f6dc2d933f001e;p=packages%2Fo%2Fopenafs.git Return a cell name from afsconf_LookupServer Previously, afsconf_LookupServer could not meaningfully return a cell name, since a char* was passed in for realCellName, and afsconf_GetAfsdbInfo was expecting the value of the pointer to change. Change afsconf_LookupServer to take a char**, and pass realCellName by reference, so we can get a cell name back. Change-Id: Ib945fcb4be482ee155cdd1dcd62fe577c002082d Reviewed-on: http://gerrit.openafs.org/1039 Tested-by: Andrew Deason Reviewed-by: Jeffrey Altman Reviewed-by: Derrick Brashear --- diff --git a/src/auth/cellconfig.c b/src/auth/cellconfig.c index 4fc5cc2a2..b5ebe0053 100644 --- a/src/auth/cellconfig.c +++ b/src/auth/cellconfig.c @@ -998,13 +998,14 @@ afsconf_LookupServer(const char *service, const char *protocol, const char *cellName, unsigned short afsdbPort, int *cellHostAddrs, char cellHostNames[][MAXHOSTCHARS], unsigned short ports[], unsigned short ipRanks[], - int *numServers, int *ttl, char *realCellName) + int *numServers, int *ttl, char **arealCellName) { int code = 0; int len; unsigned char answer[1024]; unsigned char *p; char *dotcellname; + char *realCellName; int cellnamelength, fullnamelength; char host[256]; int server_num = 0; @@ -1178,6 +1179,8 @@ afsconf_LookupServer(const char *service, const char *protocol, *p = tolower(*p); } + *arealCellName = realCellName; + *numServers = server_num; *ttl = minttl ? (time(0) + minttl) : 0; @@ -1215,7 +1218,7 @@ afsconf_GetAfsdbInfo(char *acellName, char *aservice, (const char *)acellName, afsdbport, cellHostAddrs, cellHostNames, ports, ipRanks, &numServers, &ttl, - realCellName); + &realCellName); if (code == 0) { acellInfo->timeout = ttl;