afsconf srv lookup fill cellname
authorDerrick Brashear <shadow@dementia.org>
Mon, 8 Mar 2010 19:06:50 +0000 (14:06 -0500)
committerDerrick Brashear <shadow@dementia.org>
Mon, 8 Mar 2010 19:26:21 +0000 (11:26 -0800)
pull out the cellname from the reply

Change-Id: I8e0dbb5b82e353ecd29a9cce25eaee1255062cd9
Reviewed-on: http://gerrit.openafs.org/1537
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

src/auth/cellconfig.c

index 7cba99a..2009978 100644 (file)
@@ -1147,6 +1147,13 @@ afsconf_LookupServer(const char *service, const char *protocol,
        }
        if (type == T_SRV) {
            struct hostent *he;
+           /* math here: _ is 1, _ ._ is 3, _ ._ . is 4. then the domain. */
+           if ((strncmp(host + 1, IANAname, strlen(IANAname)) == 0) &&
+               (strncmp(host + strlen(IANAname) + 3, protocol,
+                        strlen(protocol)) == 0)) {
+               realCellName = strdup(host + strlen(IANAname) +
+                                     strlen(protocol) + 4);
+           }
 
            code = dn_expand(answer, answer + len, p + 6, host, sizeof(host));
            if (code < 0) {