1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-08 17:42:12 +03:00

* resolv: Code updated from BIND-4.9.3P2C3.

This commit is contained in:
Roland McGrath
1996-05-09 15:59:18 +00:00
parent 782e865067
commit 5570726557
10 changed files with 169 additions and 43 deletions

View File

@@ -502,16 +502,28 @@ __p_rr(cp, msg, file)
case T_HINFO:
case T_ISDN:
(void) fputs("\t\"", file);
cp2 = cp + dlen;
if (n = *cp++) {
fprintf(file, "\t%.*s", n, cp);
cp += n;
if ((n = (unsigned char) *cp++) != 0) {
for (c = n; c > 0 && cp < cp2; c--) {
if (strchr("\n\"\\", *cp))
(void) putc('\\', file);
(void) putc(*cp++, file);
}
putc('"', file);
}
if ((cp < cp2) && (n = *cp++)) {
fprintf(file, "\t%.*s", n, cp);
cp += n;
} else if (type == T_HINFO)
if (cp < cp2 && (n = (unsigned char) *cp++) != 0) {
(void) fputs ("\t\"", file);
for (c = n; c > 0 && cp < cp2; c--) {
if (strchr("\n\"\\", *cp))
(void) putc('\\', file);
(void) putc(*cp++, file);
}
putc('"', file);
} else if (type == T_HINFO) {
(void) fputs("\"?\"", file);
fprintf(file, "\n;; *** Warning *** OS-type missing");
}
break;
case T_SOA:
@@ -563,12 +575,11 @@ __p_rr(cp, msg, file)
cp2 = cp1 + dlen;
while (cp < cp2) {
if (n = (unsigned char) *cp++) {
for (c = n; c > 0 && cp < cp2; c--)
if ((*cp == '\n') || (*cp == '"')) {
(void) putc('\\', file);
(void) putc(*cp++, file);
} else
(void) putc(*cp++, file);
for (c = n; c > 0 && cp < cp2; c--) {
if (strchr("\n\"\\", *cp))
(void) putc('\\', file);
(void) putc(*cp++, file);
}
}
}
putc('"', file);