From: mar Date: Mon, 27 Mar 1989 15:38:37 +0000 (+0000) Subject: putting hostname in ""'s suppresses canonicalization X-Git-Tag: KPATCH4~5 X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/commitdiff_plain/00bfb58106998c20f43ad136eb6047348a0ff718 putting hostname in ""'s suppresses canonicalization --- diff --git a/lib/fixhost.c b/lib/fixhost.c index a7072b02..73639625 100644 --- a/lib/fixhost.c +++ b/lib/fixhost.c @@ -28,10 +28,11 @@ extern char *realloc(); extern char *strsave(); /* - * Canonicalize hostname; if it is in the namespace, call the - * nameserver to expand it; otherwise uppercase it and append the - * default domain (using an, er, undocumented global of the - * nameserver). + * Canonicalize hostname: + * if it is in double-quotes, then strip the quotes and return the name. + * if it is in the namespace, call the nameserver to expand it + * otherwise uppercase it and append the default domain (using an, er, + * undocumented global of the nameserver). * * Assumes that host was allocated using malloc(); it may be freed or * realloc'ed, so the old pointer should not be considered valid. @@ -47,6 +48,13 @@ canonicalize_hostname(host) char tbuf[BUFSIZ]; register char *cp; + if (strlen(host) > 2 && host[0] == '"' && host[strlen(host)-1] == '"') { + strcpy(host+1, tbuf); + free(host); + tbuf[strlen(tbuf)-1] = 0; + return(strsave(tbuf)); + } + if (index(host, '*') || index(host, '?')) return(host);