Lines Matching +full:x +full:- +full:origin
1 /*-
2 * SPDX-License-Identifier: ISC
5 * Copyright (c) 1996-1999 by Internet Software Consortium.
46 # define SPRINTF(x) strlen(sprintf/**/x) argument
48 # define SPRINTF(x) ((size_t)sprintf x) argument
53 static size_t prune_origin(const char *name, const char *origin);
57 const u_char **p, const char *origin,
67 #define T(x) \ argument
69 if ((x) < 0) \
70 return (-1); \
82 *\li Number of characters written to buf, or -1 (check errno).
86 const char *name_ctx, const char *origin, in ns_sprintrr() argument
94 name_ctx, origin, buf, buflen); in ns_sprintrr()
102 *\li Number of characters written to buf, or -1 (check errno).
108 const char *name_ctx, const char *origin, in ns_sprintrrf() argument
117 int len, x; in ns_sprintrrf() local
125 len = prune_origin(name, origin); in ns_sprintrrf()
132 /* Origin not used or not root, and no trailing dot? */ in ns_sprintrrf()
133 if (((origin == NULL || origin[0] == '\0') || in ns_sprintrrf()
134 (origin[0] != '.' && origin[1] != '\0' && in ns_sprintrrf()
135 name[len] == '\0')) && name[len - 1] != '.') { in ns_sprintrrf()
147 T(x = ns_format_ttl(ttl, buf, buflen)); in ns_sprintrrf()
148 addlen(x, &buf, &buflen); in ns_sprintrrf()
151 T(spaced = addtab(x + len, 16, spaced, &buf, &buflen)); in ns_sprintrrf()
171 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
198 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
202 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
206 if ((edata - rdata) != 5*NS_INT32SZ) in ns_sprintrrf()
273 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
291 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
295 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
373 return (-1); in ns_sprintrrf()
380 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
399 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
406 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
410 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
445 lcnt--; in ns_sprintrrf()
467 key_id = dst_s_dns_key_id(rdata, edata-rdata); in ns_sprintrrf()
474 len = SPRINTF((tmp, "0x%04x %u %u", in ns_sprintrrf()
479 len = b64_ntop(rdata, edata - rdata, in ns_sprintrrf()
491 T(addstr(base64_key + n, MIN(len - n, 48), in ns_sprintrrf()
540 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
543 len = b64_ntop(rdata, edata - rdata, in ns_sprintrrf()
555 T(addstr(base64_key + n, MIN(len - n, 48), in ns_sprintrrf()
567 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
570 n = edata - rdata; in ns_sprintrrf()
592 siz = (edata-rdata)*4/3 + 4; /* "+4" accounts for trailing \0 */ in ns_sprintrrf()
598 len = b64_ntop(rdata, edata-rdata, base64_cert, siz); in ns_sprintrrf()
613 T(addstr(base64_cert + n, MIN(len - n, 48), in ns_sprintrrf()
623 /* KJD - need to complete this */ in ns_sprintrrf()
628 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
654 /* BEW - need to complete this */ in ns_sprintrrf()
657 T(len = addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
686 memcpy(&a.s6_addr[pbyte], rdata, sizeof(a) - pbyte); in ns_sprintrrf()
689 rdata += sizeof(a) - pbyte; in ns_sprintrrf()
697 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
731 len = SPRINTF((tmp, "%02X", *rdata)); in ns_sprintrrf()
757 T(addstr("-", 1, &buf, &buflen)); in ns_sprintrrf()
759 while (t-- > 0) { in ns_sprintrrf()
760 len = SPRINTF((tmp, "%02X", *rdata)); in ns_sprintrrf()
827 t -= 5; in ns_sprintrrf()
830 t -= t; in ns_sprintrrf()
856 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
883 siz = (edata-rdata)*4/3 + 4; /* "+4" accounts for trailing \0 */ in ns_sprintrrf()
888 len = b64_ntop(rdata, edata-rdata, base64_dhcid, siz); in ns_sprintrrf()
904 T(addstr(base64_dhcid + n, MIN(len - n, 48), in ns_sprintrrf()
953 switch (rdata[-2]) { in ns_sprintrrf()
968 T(addname(msg, msglen, &rdata, origin, &buf, &buflen)); in ns_sprintrrf()
975 siz = (edata-rdata)*4/3 + 4; /* "+4" accounts for trailing \0 */ in ns_sprintrrf()
980 len = b64_ntop(rdata, edata-rdata, base64_key, siz); in ns_sprintrrf()
996 T(addstr(base64_key + n, MIN(len - n, 48), in ns_sprintrrf()
1024 len = sprintf(tmp, "%02X", *rdata); in ns_sprintrrf()
1039 T(addname(msg, msglen, &rdata, origin, in ns_sprintrrf()
1051 return (buf - obuf); in ns_sprintrrf()
1058 len = SPRINTF((tmp, "\\# %u%s\t; %s", (unsigned)(edata - rdata), in ns_sprintrrf()
1065 n = MIN(16, edata - rdata); in ns_sprintrrf()
1067 p += SPRINTF((p, "%02x ", rdata[m])); in ns_sprintrrf()
1068 T(addstr(tmp, p - tmp, &buf, &buflen)); in ns_sprintrrf()
1071 T(addtab(p - tmp + 1, 48, spaced, &buf, &buflen)); in ns_sprintrrf()
1079 T(addstr(tmp, p - tmp, &buf, &buflen)); in ns_sprintrrf()
1082 return (buf - obuf); in ns_sprintrrf()
1090 * prune_origin(name, origin)
1091 * Find out if the name is at or under the current origin.
1093 * Number of characters in name before start of origin,
1094 * or length of name if origin does not match.
1099 prune_origin(const char *name, const char *origin) { in prune_origin() argument
1103 if (origin != NULL && ns_samename(name, origin) == 1) in prune_origin()
1104 return (name - oname - (name > oname)); in prune_origin()
1118 return (name - oname); in prune_origin()
1124 * Format a <character-string> into the presentation buffer.
1128 * -1 for output buffer error
1145 while (n-- > 0) { in charstr()
1158 return (rdata - odata); in charstr()
1163 return (-1); in charstr()
1168 const u_char **pp, const char *origin, in addname() argument
1178 newlen = prune_origin(*buf, origin); in addname()
1188 if (((origin == NULL || origin[0] == '\0') || in addname()
1189 (origin[0] != '.' && origin[1] != '\0' && in addname()
1190 (*buf)[newlen] == '\0')) && (*buf)[newlen - 1] != '.') { in addname()
1207 return (-1); in addname()
1214 *buflen -= len; in addlen()
1221 return (-1); in addstr()
1235 if (spaced || len >= target - 1) { in addtab()
1239 for (t = (target - len - 1) / 8; t >= 0; t--) in addtab()
1243 return (-1); in addtab()