Lines Matching defs:s

123 	{ LDNS_WIREPARSE_ERR_SYNTAX_TTL, "Syntax error, could not parse the RR's TTL" },
124 { LDNS_WIREPARSE_ERR_SYNTAX_TYPE, "Syntax error, could not parse the RR's type" },
125 { LDNS_WIREPARSE_ERR_SYNTAX_CLASS, "Syntax error, could not parse the RR's class" },
126 { LDNS_WIREPARSE_ERR_SYNTAX_RDATA, "Syntax error, could not parse the RR's rdata" },
316 int sldns_wire2str_pkt_buf(uint8_t* d, size_t dlen, char* s, size_t slen)
319 return sldns_wire2str_pkt_scan(&d, &dlen, &s, &slen);
322 int sldns_wire2str_rr_buf(uint8_t* d, size_t dlen, char* s, size_t slen)
325 return sldns_wire2str_rr_scan(&d, &dlen, &s, &slen, NULL, 0, NULL);
328 int sldns_wire2str_rrquestion_buf(uint8_t* d, size_t dlen, char* s, size_t slen)
331 return sldns_wire2str_rrquestion_scan(&d, &dlen, &s, &slen, NULL, 0, NULL);
342 int sldns_wire2str_rr_unknown_buf(uint8_t* d, size_t dlen, char* s, size_t slen)
345 return sldns_wire2str_rr_unknown_scan(&d, &dlen, &s, &slen, NULL, 0, NULL);
349 char* s, size_t slen)
352 return sldns_wire2str_rr_comment_print(&s, &slen, rr, rrlen, dname_len,
356 int sldns_wire2str_type_buf(uint16_t rrtype, char* s, size_t slen)
359 return sldns_wire2str_type_print(&s, &slen, rrtype);
362 int sldns_wire2str_class_buf(uint16_t rrclass, char* s, size_t slen)
365 return sldns_wire2str_class_print(&s, &slen, rrclass);
368 int sldns_wire2str_rcode_buf(int rcode, char* s, size_t slen)
371 return sldns_wire2str_rcode_print(&s, &slen, rcode);
374 int sldns_wire2str_opcode_buf(int opcode, char* s, size_t slen)
377 return sldns_wire2str_opcode_print(&s, &slen, opcode);
380 int sldns_wire2str_dname_buf(uint8_t* d, size_t dlen, char* s, size_t slen)
383 return sldns_wire2str_dname_scan(&d, &dlen, &s, &slen, NULL, 0, NULL);
413 static int print_hex_buf(char** s, size_t* slen, uint8_t* buf, size_t len)
418 (void)sldns_str_print(s, slen, "%c%c", hex[(buf[i]&0xf0)>>4],
426 char** s, size_t* slen)
429 w += sldns_str_print(s, slen, "%s", pref);
430 w += print_hex_buf(s, slen, *d, *dlen);
436 int sldns_wire2str_pkt_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen)
450 w += sldns_wire2str_header_scan(d, dlen, s, slen);
451 w += sldns_str_print(s, slen, "\n");
452 w += sldns_str_print(s, slen, ";; QUESTION SECTION:\n");
454 w += sldns_wire2str_rrquestion_scan(d, dlen, s, slen,
458 w += sldns_str_print(s, slen, "\n");
459 w += sldns_str_print(s, slen, ";; ANSWER SECTION:\n");
461 w += sldns_wire2str_rr_scan(d, dlen, s, slen, pkt, pktlen, &comprloop);
464 w += sldns_str_print(s, slen, "\n");
465 w += sldns_str_print(s, slen, ";; AUTHORITY SECTION:\n");
467 w += sldns_wire2str_rr_scan(d, dlen, s, slen, pkt, pktlen, &comprloop);
470 w += sldns_str_print(s, slen, "\n");
471 w += sldns_str_print(s, slen, ";; ADDITIONAL SECTION:\n");
473 w += sldns_wire2str_rr_scan(d, dlen, s, slen, pkt, pktlen, &comprloop);
477 w += sldns_str_print(s, slen, ";; MSG SIZE rcvd: %d\n", (int)pktlen);
480 d, dlen, s, slen);
481 w += sldns_str_print(s, slen, "\n");
487 static int sldns_rr_tcttl_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
495 d, dl, s, sl);
501 w += sldns_wire2str_class_print(s, sl, c);
502 w += sldns_str_print(s, sl, "\t");
503 w += sldns_wire2str_type_print(s, sl, t);
505 return w + sldns_str_print(s, sl, "; Error no ttl");
507 "; Error malformed ttl 0x", d, dl, s, sl);
514 w += sldns_str_print(s, sl, "%lu\t", (unsigned long)ttl);
515 w += sldns_wire2str_class_print(s, sl, c);
516 w += sldns_str_print(s, sl, "\t");
517 w += sldns_wire2str_type_print(s, sl, t);
521 int sldns_wire2str_rr_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen,
532 return sldns_wire2str_edns_scan(d, dlen, s, slen, pkt, pktlen);
537 w += sldns_wire2str_dname_scan(d, dlen, s, slen, pkt, pktlen, comprloop);
538 w += sldns_str_print(s, slen, "\t");
546 w += sldns_wire2str_class_print(s, slen, c);
547 w += sldns_str_print(s, slen, "\t");
548 w += sldns_wire2str_type_print(s, slen, t);
549 w += sldns_str_print(s, slen, " ; Error no ttl,rdata\n");
554 return w + sldns_str_print(s, slen, ";Error missing RR\n");
555 w += print_remainder_hex(";Error partial RR 0x", d, dlen, s, slen);
556 return w + sldns_str_print(s, slen, "\n");
559 w += sldns_rr_tcttl_scan(d, dlen, s, slen);
560 w += sldns_str_print(s, slen, "\t");
565 return w + sldns_str_print(s, slen, ";Error missing rdatalen\n");
567 d, dlen, s, slen);
568 return w + sldns_str_print(s, slen, "\n");
575 w += sldns_str_print(s, slen, "\\# %u ", (unsigned)rdlen);
577 return w + sldns_str_print(s, slen, ";Error missing rdata\n");
578 w += print_remainder_hex(";Error partial rdata 0x", d, dlen, s, slen);
579 return w + sldns_str_print(s, slen, "\n");
581 w += sldns_wire2str_rdata_scan(d, &rdlen, s, slen, rrtype, pkt, pktlen,
586 w += sldns_wire2str_rr_comment_print(s, slen, rr, rrlen, dname_off,
588 w += sldns_str_print(s, slen, "\n");
592 int sldns_wire2str_rrquestion_scan(uint8_t** d, size_t* dlen, char** s,
597 w += sldns_wire2str_dname_scan(d, dlen, s, slen, pkt, pktlen, comprloop);
598 w += sldns_str_print(s, slen, "\t");
601 return w + sldns_str_print(s, slen, "Error malformed\n");
602 w += print_remainder_hex("Error malformed 0x", d, dlen, s, slen);
603 return w + sldns_str_print(s, slen, "\n");
609 w += sldns_wire2str_class_print(s, slen, c);
610 w += sldns_str_print(s, slen, "\t");
611 w += sldns_wire2str_type_print(s, slen, t);
612 w += sldns_str_print(s, slen, "\n");
616 int sldns_wire2str_rr_unknown_scan(uint8_t** d, size_t* dlen, char** s,
621 w += sldns_wire2str_dname_scan(d, dlen, s, slen, pkt, pktlen, comprloop);
622 w += sldns_str_print(s, slen, "\t");
623 w += sldns_rr_tcttl_scan(d, dlen, s, slen);
624 w += sldns_str_print(s, slen, "\t");
627 return w + sldns_str_print(s, slen, ";Error missing rdatalen\n");
629 d, dlen, s, slen);
630 return w + sldns_str_print(s, slen, "\n");
637 w += sldns_str_print(s, slen, "\\# %u ", (unsigned)rdlen);
639 return w + sldns_str_print(s, slen, ";Error missing rdata\n");
640 w += print_remainder_hex(";Error partial rdata 0x", d, dlen, s, slen);
641 return w + sldns_str_print(s, slen, "\n");
643 w += sldns_wire2str_rdata_unknown_scan(d, &rdlen, s, slen);
645 w += sldns_str_print(s, slen, "\n");
650 static int rr_comment_dnskey(char** s, size_t* slen, uint8_t* rr,
662 w += sldns_str_print(s, slen, " ;{");
665 w += sldns_str_print(s, slen, "id = %u",
671 w += sldns_str_print(s, slen, " (ksk)");
672 else w += sldns_str_print(s, slen, " (zsk)");
677 w += sldns_str_print(s, slen, ", ");
678 w += sldns_str_print(s, slen, "size = %db",
683 w += sldns_str_print(s, slen, "}");
688 static int rr_comment_rrsig(char** s, size_t* slen, uint8_t* rr,
698 return sldns_str_print(s, slen, " ;{id = %d}",
703 static int rr_comment_nsec3(char** s, size_t* slen, uint8_t* rr,
715 w += sldns_str_print(s, slen, " ;{flags: optout}");
719 int sldns_wire2str_rr_comment_print(char** s, size_t* slen, uint8_t* rr,
723 return rr_comment_dnskey(s, slen, rr, rrlen, dname_off);
725 return rr_comment_rrsig(s, slen, rr, rrlen, dname_off);
727 return rr_comment_nsec3(s, slen, rr, rrlen, dname_off);
732 int sldns_wire2str_header_scan(uint8_t** d, size_t* dlen, char** s,
737 w += sldns_str_print(s, slen, ";; ->>HEADER<<- ");
739 return w+sldns_str_print(s, slen, "Error empty packet");
741 return w+print_remainder_hex("Error header too short 0x", d, dlen, s, slen);
744 w += sldns_str_print(s, slen, "opcode: ");
745 w += sldns_wire2str_opcode_print(s, slen, opcode);
746 w += sldns_str_print(s, slen, ", ");
747 w += sldns_str_print(s, slen, "rcode: ");
748 w += sldns_wire2str_rcode_print(s, slen, rcode);
749 w += sldns_str_print(s, slen, ", ");
750 w += sldns_str_print(s, slen, "id: %d\n", (int)LDNS_ID_WIRE(*d));
751 w += sldns_str_print(s, slen, ";; flags:");
752 if(LDNS_QR_WIRE(*d)) w += sldns_str_print(s, slen, " qr");
753 if(LDNS_AA_WIRE(*d)) w += sldns_str_print(s, slen, " aa");
754 if(LDNS_TC_WIRE(*d)) w += sldns_str_print(s, slen, " tc");
755 if(LDNS_RD_WIRE(*d)) w += sldns_str_print(s, slen, " rd");
756 if(LDNS_CD_WIRE(*d)) w += sldns_str_print(s, slen, " cd");
757 if(LDNS_RA_WIRE(*d)) w += sldns_str_print(s, slen, " ra");
758 if(LDNS_AD_WIRE(*d)) w += sldns_str_print(s, slen, " ad");
759 if(LDNS_Z_WIRE(*d)) w += sldns_str_print(s, slen, " z");
760 w += sldns_str_print(s, slen, " ; ");
762 return w+print_remainder_hex("Error header too short 0x", d, dlen, s, slen);
763 w += sldns_str_print(s, slen, "QUERY: %d, ", (int)LDNS_QDCOUNT(*d));
764 w += sldns_str_print(s, slen, "ANSWER: %d, ", (int)LDNS_ANCOUNT(*d));
765 w += sldns_str_print(s, slen, "AUTHORITY: %d, ", (int)LDNS_NSCOUNT(*d));
766 w += sldns_str_print(s, slen, "ADDITIONAL: %d ", (int)LDNS_ARCOUNT(*d));
772 int sldns_wire2str_rdata_scan(uint8_t** d, size_t* dlen, char** s,
778 char* origs = *s;
786 return sldns_wire2str_rdata_unknown_scan(d, dlen, s, slen);
798 w += sldns_str_print(s, slen, " ");
799 n = sldns_wire2str_rdf_scan(d, dlen, s, slen, rdftype,
804 *d = origd; *s = origs;
807 s, slen);
817 int sldns_wire2str_rdata_unknown_scan(uint8_t** d, size_t* dlen, char** s,
823 w += sldns_str_print(s, slen, "\\# %u", (unsigned)*dlen);
827 w += sldns_str_print(s, slen, " ");
828 w += print_hex_buf(s, slen, *d, *dlen);
835 static int dname_char_print(char** s, size_t* slen, uint8_t c)
838 return sldns_str_print(s, slen, "\\%c", c);
840 return sldns_str_print(s, slen, "\\%03u", (unsigned)c);
843 **s = (char)c;
844 (*s)++;
850 int sldns_wire2str_dname_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen,
866 if(*dlen == 0) return sldns_str_print(s, slen, "ErrorMissingDname");
870 return sldns_str_print(s, slen, ".");
882 return w + sldns_str_print(s, slen,
885 return w + sldns_str_print(s, slen,
891 return w + sldns_str_print(s, slen,
896 return w + sldns_str_print(s, slen,
904 w += sldns_str_print(s, slen,
921 w += sldns_str_print(s, slen,
926 w += dname_char_print(s, slen, *pos++);
933 w += sldns_str_print(s, slen, ".");
938 if(w == 0) w += sldns_str_print(s, slen, ".");
942 int sldns_wire2str_opcode_print(char** s, size_t* slen, int opcode)
946 return sldns_str_print(s, slen, "%s", lt->name);
948 return sldns_str_print(s, slen, "OPCODE%u", (unsigned)opcode);
951 int sldns_wire2str_rcode_print(char** s, size_t* slen, int rcode)
955 return sldns_str_print(s, slen, "%s", lt->name);
957 return sldns_str_print(s, slen, "RCODE%u", (unsigned)rcode);
960 int sldns_wire2str_class_print(char** s, size_t* slen, uint16_t rrclass)
965 return sldns_str_print(s, slen, "%s", lt->name);
967 return sldns_str_print(s, slen, "CLASS%u", (unsigned)rrclass);
970 int sldns_wire2str_type_print(char** s, size_t* slen, uint16_t rrtype)
974 return sldns_str_print(s, slen, "%s", descriptor->_name);
976 return sldns_str_print(s, slen, "TYPE%u", (unsigned)rrtype);
979 int sldns_wire2str_edns_option_code_print(char** s, size_t* slen,
985 return sldns_str_print(s, slen, "%s", lt->name);
987 return sldns_str_print(s, slen, "OPT%u", (unsigned)opcode);
990 int sldns_wire2str_class_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen)
994 if(*dlen < 2) return print_remainder_hex("Error malformed 0x", d, dlen, s, slen);
998 return sldns_wire2str_class_print(s, slen, c);
1001 int sldns_wire2str_type_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen)
1005 if(*dlen < 2) return print_remainder_hex("Error malformed 0x", d, dlen, s, slen);
1009 return sldns_wire2str_type_print(s, slen, t);
1012 int sldns_wire2str_ttl_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen)
1016 if(*dlen < 4) return print_remainder_hex("Error malformed 0x", d, dlen, s, slen);
1020 return sldns_str_print(s, slen, "%u", (unsigned)ttl);
1024 sldns_print_svcparamkey(char** s, size_t* slen, uint16_t svcparamkey)
1027 return sldns_str_print(s, slen, "%s", svcparamkey_strs[svcparamkey]);
1030 return sldns_str_print(s, slen, "key%d", (int)svcparamkey);
1034 static int sldns_wire2str_svcparam_port2str(char** s,
1041 w = sldns_str_print(s, slen, "=%d", (int)sldns_read_uint16(data));
1046 static int sldns_wire2str_svcparam_ipv4hint2str(char** s,
1059 w += sldns_str_print(s, slen, "=%s", ip_str);
1066 w += sldns_str_print(s, slen, ",%s", ip_str);
1075 static int sldns_wire2str_svcparam_ipv6hint2str(char** s,
1088 w += sldns_str_print(s, slen, "=%s", ip_str);
1095 w += sldns_str_print(s, slen, ",%s", ip_str);
1104 static int sldns_wire2str_svcparam_mandatory2str(char** s,
1113 w += sldns_str_print(s, slen, "=");
1114 w += sldns_print_svcparamkey(s, slen, sldns_read_uint16(data));
1118 w += sldns_str_print(s, slen, ",");
1119 w += sldns_print_svcparamkey(s, slen, sldns_read_uint16(data));
1126 static int sldns_wire2str_svcparam_alpn2str(char** s,
1134 w += sldns_str_print(s, slen, "=\"");
1144 w += sldns_str_print(s, slen, "\\\\\\%c", dp[i]);
1147 w += sldns_str_print(s, slen, "\\\\%c", dp[i]);
1150 w += sldns_str_print(s, slen, "\\%03u", (unsigned) dp[i]);
1153 w += sldns_str_print(s, slen, "%c", dp[i]);
1157 w += sldns_str_print(s, slen, "%s", ",");
1159 w += sldns_str_print(s, slen, "\"");
1164 static int sldns_wire2str_svcparam_ech2str(char** s,
1172 w += sldns_str_print(s, slen, "=\"");
1174 if ((size = sldns_b64_ntop(data, data_len, *s, *slen)) < 0)
1177 (*s) += size;
1180 w += sldns_str_print(s, slen, "\"");
1185 int sldns_wire2str_svcparam_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen)
1205 written_chars += sldns_print_svcparamkey(s, slen, svcparamkey);
1224 r = sldns_wire2str_svcparam_port2str(s, slen, data_len, *d);
1227 r = sldns_wire2str_svcparam_ipv4hint2str(s, slen, data_len, *d);
1230 r = sldns_wire2str_svcparam_ipv6hint2str(s, slen, data_len, *d);
1233 r = sldns_wire2str_svcparam_mandatory2str(s, slen, data_len, *d);
1238 r = sldns_wire2str_svcparam_alpn2str(s, slen, data_len, *d);
1241 r = sldns_wire2str_svcparam_ech2str(s, slen, data_len, *d);
1247 r = sldns_str_print(s, slen, "=\"");
1253 r += sldns_str_print(s, slen, "\\%c", ch);
1256 r += sldns_str_print(s, slen, "\\%03u", (unsigned) ch);
1259 r += sldns_str_print(s, slen, "%c", ch);
1262 r += sldns_str_print(s, slen, "\"");
1274 int sldns_wire2str_rdf_scan(uint8_t** d, size_t* dlen, char** s, size_t* slen,
1282 return sldns_wire2str_dname_scan(d, dlen, s, slen, pkt, pktlen, comprloop);
1284 return sldns_wire2str_int8_scan(d, dlen, s, slen);
1286 return sldns_wire2str_int16_scan(d, dlen, s, slen);
1288 return sldns_wire2str_int32_scan(d, dlen, s, slen);
1290 return sldns_wire2str_period_scan(d, dlen, s, slen);
1292 return sldns_wire2str_tsigtime_scan(d, dlen, s, slen);
1294 return sldns_wire2str_a_scan(d, dlen, s, slen);
1296 return sldns_wire2str_aaaa_scan(d, dlen, s, slen);
1298 return sldns_wire2str_str_scan(d, dlen, s, slen);
1300 return sldns_wire2str_apl_scan(d, dlen, s, slen);
1302 return sldns_wire2str_b32_ext_scan(d, dlen, s, slen);
1304 return sldns_wire2str_b64_scan(d, dlen, s, slen);
1306 return sldns_wire2str_hex_scan(d, dlen, s, slen);
1308 return sldns_wire2str_nsec_scan(d, dlen, s, slen);
1310 return sldns_wire2str_nsec3_salt_scan(d, dlen, s, slen);
1312 return sldns_wire2str_type_scan(d, dlen, s, slen);
1314 return sldns_wire2str_class_scan(d, dlen, s, slen);
1316 return sldns_wire2str_cert_alg_scan(d, dlen, s, slen);
1318 return sldns_wire2str_alg_scan(d, dlen, s, slen);
1320 return sldns_wire2str_unknown_scan(d, dlen, s, slen);
1322 return sldns_wire2str_time_scan(d, dlen, s, slen);
1324 return sldns_wire2str_loc_scan(d, dlen, s, slen);
1327 return sldns_wire2str_wks_scan(d, dlen, s, slen);
1329 return sldns_wire2str_nsap_scan(d, dlen, s, slen);
1331 return sldns_wire2str_atma_scan(d, dlen, s, slen);
1333 return sldns_wire2str_ipseckey_scan(d, dlen, s, slen, pkt,
1336 return sldns_wire2str_hip_scan(d, dlen, s, slen);
1338 return sldns_wire2str_int16_data_scan(d, dlen, s, slen);
1340 return sldns_wire2str_b32_ext_scan(d, dlen, s, slen);
1342 return sldns_wire2str_ilnp64_scan(d, dlen, s, slen);
1344 return sldns_wire2str_eui48_scan(d, dlen, s, slen);
1346 return sldns_wire2str_eui64_scan(d, dlen, s, slen);
1348 return sldns_wire2str_unquoted_scan(d, dlen, s, slen);
1350 return sldns_wire2str_tag_scan(d, dlen, s, slen);
1352 return sldns_wire2str_long_str_scan(d, dlen, s, slen);
1354 return sldns_wire2str_svcparam_scan(d, dlen, s, slen);
1356 return sldns_wire2str_tsigerror_scan(d, dlen, s, slen);
1362 int sldns_wire2str_int8_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1366 w = sldns_str_print(s, sl, "%u", (unsigned)**d);
1372 int sldns_wire2str_int16_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1376 w = sldns_str_print(s, sl, "%lu", (unsigned long)sldns_read_uint16(*d));
1382 int sldns_wire2str_int32_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1386 w = sldns_str_print(s, sl, "%lu", (unsigned long)sldns_read_uint32(*d));
1392 int sldns_wire2str_period_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1396 w = sldns_str_print(s, sl, "%u", (unsigned)sldns_read_uint32(*d));
1402 int sldns_wire2str_tsigtime_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1417 w = sldns_str_print(s, sl, "%llu", (long long)tsigtime);
1419 w = sldns_str_print(s, sl, "%I64u", (long long)tsigtime);
1426 int sldns_wire2str_a_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1433 w = sldns_str_print(s, sl, "%s", buf);
1439 int sldns_wire2str_aaaa_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1447 w = sldns_str_print(s, sl, "%s", buf);
1457 static int str_char_print(char** s, size_t* sl, uint8_t c)
1461 return sldns_str_print(s, sl, "\\%c", c);
1463 **s = (char)c;
1464 (*s)++;
1469 return sldns_str_print(s, sl, "\\%03u", (unsigned)c);
1472 int sldns_wire2str_str_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1481 w += sldns_str_print(s, sl, "\"");
1483 w += str_char_print(s, sl, (*d)[i]);
1484 w += sldns_str_print(s, sl, "\"");
1490 int sldns_wire2str_apl_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1504 w += sldns_str_print(s, sl, "!");
1505 w += sldns_str_print(s, sl, "%u:", (unsigned)family);
1511 w += sldns_str_print(s, sl, ".");
1513 w += sldns_str_print(s, sl, "%d", (*d)[4+i]);
1514 else w += sldns_str_print(s, sl, "0");
1521 w += sldns_str_print(s, sl, ":");
1523 w += sldns_str_print(s, sl, "%02x", (*d)[4+i]);
1524 else w += sldns_str_print(s, sl, "00");
1527 w += sldns_str_print(s, sl, "/%u", (unsigned)prefix);
1533 int sldns_wire2str_b32_ext_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1547 sldns_b32_ntop_extended_hex((*d)+1, datalen, *s, *sl);
1550 (*s) += sz;
1556 static int sldns_wire2str_b64_scan_num(uint8_t** d, size_t* dl, char** s,
1567 sldns_b64_ntop(*d, num, *s, *sl);
1570 (*s) += sz;
1575 int sldns_wire2str_b64_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1578 return sldns_str_print(s, sl, "0");
1580 return sldns_wire2str_b64_scan_num(d, dl, s, sl, *dl);
1583 int sldns_wire2str_hex_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1586 return sldns_str_print(s, sl, "0");
1588 return print_remainder_hex("", d, dl, s, sl);
1591 int sldns_wire2str_nsec_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1623 if(w) w += sldns_str_print(s, sl, " ");
1624 w += sldns_wire2str_type_print(s, sl,
1637 int sldns_wire2str_nsec3_salt_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1647 return sldns_str_print(s, sl, "-");
1649 w = print_hex_buf(s, sl, *d, salt_len);
1655 int sldns_wire2str_cert_alg_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1663 w = sldns_str_print(s, sl, "%s", lt->name);
1664 else w = sldns_str_print(s, sl, "%d", data);
1670 int sldns_wire2str_alg_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1673 * this kind of got sneaked into the rfc's */
1674 return sldns_wire2str_int8_scan(d, dl, s, sl);
1677 int sldns_wire2str_unknown_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1679 return sldns_wire2str_rdata_unknown_scan(d, dl, s, sl);
1682 int sldns_wire2str_time_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1696 return sldns_str_print(s, sl, "%s", date_buf);
1733 double s;
1760 s = (double) latitude / 1000.0;
1762 h, m, s, northerness);
1775 s = (double) longitude / (1000.0);
1777 h, m, s, easterness);
1779 s = ((double) altitude) / 100;
1780 s -= 100000;
1783 w += sldns_str_print(str, sl, "%.2f", s);
1785 w += sldns_str_print(str, sl, "%.0f", s);
1805 int sldns_wire2str_wks_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1826 w += sldns_str_print(s, sl, "%s", protocol->p_name);
1829 w += sldns_str_print(s, sl, "tcp");
1831 w += sldns_str_print(s, sl, "udp");
1833 w += sldns_str_print(s, sl, "%u", (unsigned)protocol_nr);
1850 w += sldns_str_print(s, sl, " %s",
1852 else w += sldns_str_print(s, sl, " %u",
1868 int sldns_wire2str_nsap_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1870 return print_remainder_hex("0x", d, dl, s, sl);
1873 int sldns_wire2str_atma_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1886 return print_remainder_hex("", d, dl, s, sl);
1889 w += sldns_str_print(s, sl, "+");
1893 w += sldns_str_print(s, sl, "%c", (*d)[i]);
1906 char** s, size_t* sl, uint8_t* pkt, size_t pktlen, int* comprloop)
1920 w += sldns_str_print(s, sl, "%d %d %d ",
1925 w += sldns_str_print(s, sl, ".");
1928 w += sldns_wire2str_a_scan(d, dl, s, sl);
1931 w += sldns_wire2str_aaaa_scan(d, dl, s, sl);
1934 w += sldns_wire2str_dname_scan(d, dl, s, sl, pkt, pktlen, comprloop);
1942 w += sldns_str_print(s, sl, " ");
1943 w += sldns_wire2str_b64_scan_num(d, dl, s, sl, *dl);
1947 int sldns_wire2str_ipseckey_scan(uint8_t** d, size_t* dl, char** s, size_t* sl,
1951 char* os = *s;
1953 int w=sldns_wire2str_ipseckey_scan_internal(d, dl, s, sl, pkt, pktlen, comprloop);
1956 *s = os;
1964 int sldns_wire2str_hip_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
1980 w = sldns_str_print(s, sl, "%u ", (unsigned)algo);
1981 w += print_hex_buf(s, sl, (*d)+4, hitlen);
1982 w += sldns_str_print(s, sl, " ");
1985 w += sldns_wire2str_b64_scan_num(d, dl, s, sl, pklen);
1989 int sldns_wire2str_int16_data_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2001 return sldns_str_print(s, sl, "0");
2003 w = sldns_str_print(s, sl, "%u ", (unsigned)n);
2004 w += sldns_wire2str_b64_scan_num(d, dl, s, sl, n);
2008 int sldns_wire2str_nsec3_next_owner_scan(uint8_t** d, size_t* dl, char** s,
2011 return sldns_wire2str_b32_ext_scan(d, dl, s, sl);
2014 int sldns_wire2str_ilnp64_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2019 w = sldns_str_print(s, sl, "%.4x:%.4x:%.4x:%.4x",
2027 int sldns_wire2str_eui48_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2032 w = sldns_str_print(s, sl, "%.2x-%.2x-%.2x-%.2x-%.2x-%.2x",
2039 int sldns_wire2str_eui64_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2044 w = sldns_str_print(s, sl, "%.2x-%.2x-%.2x-%.2x-%.2x-%.2x-%.2x-%.2x",
2052 int sldns_wire2str_unquoted_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2064 w += sldns_str_print(s, sl, "\\%c", (char)(*d)[i]);
2065 else w += str_char_print(s, sl, (*d)[i]);
2072 int sldns_wire2str_tag_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2085 w += sldns_str_print(s, sl, "%c", (char)(*d)[i+1]);
2091 int sldns_wire2str_long_str_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2095 w += sldns_str_print(s, sl, "\"");
2097 w += str_char_print(s, sl, (*d)[i]);
2098 w += sldns_str_print(s, sl, "\"");
2104 int sldns_wire2str_tsigerror_scan(uint8_t** d, size_t* dl, char** s, size_t* sl)
2112 w = sldns_str_print(s, sl, "%s", lt->name);
2113 else w = sldns_str_print(s, sl, "%d", data);
2119 int sldns_wire2str_edns_llq_print(char** s, size_t* sl, uint8_t* data,
2135 w += sldns_str_print(s, sl, "malformed LLQ ");
2136 w += print_hex_buf(s, sl, data, len);
2146 w += sldns_str_print(s, sl, "v%d ", (int)version);
2148 w += sldns_str_print(s, sl, "%s", llq_opcodes[llq_opcode]);
2149 else w += sldns_str_print(s, sl, "opcode %d", (int)llq_opcode);
2151 w += sldns_str_print(s, sl, " %s", llq_errors[error_code]);
2152 else w += sldns_str_print(s, sl, " error %d", (int)error_code);
2154 w += sldns_str_print(s, sl, " id %llx lease-life %lu",
2157 w += sldns_str_print(s, sl, " id %I64x lease-life %lu",
2163 int sldns_wire2str_edns_ul_print(char** s, size_t* sl, uint8_t* data,
2169 w += sldns_str_print(s, sl, "malformed UL ");
2170 w += print_hex_buf(s, sl, data, len);
2174 w += sldns_str_print(s, sl, "lease %lu", (unsigned long)lease);
2178 int sldns_wire2str_edns_nsid_print(char** s, size_t* sl, uint8_t* data,
2183 w += print_hex_buf(s, sl, data, len);
2187 w += sldns_str_print(s, sl, " (");
2190 w += sldns_str_print(s, sl, "%c", (char)data[i]);
2194 w += sldns_str_print(s, sl, ")");
2198 int sldns_wire2str_edns_dau_print(char** s, size_t* sl, uint8_t* data,
2207 w += sldns_str_print(s, sl, " %s", lt->name);
2208 else w += sldns_str_print(s, sl, " %d", (int)data[i]);
2213 int sldns_wire2str_edns_dhu_print(char** s, size_t* sl, uint8_t* data,
2222 w += sldns_str_print(s, sl, " %s", lt->name);
2223 else w += sldns_str_print(s, sl, " %d", (int)data[i]);
2228 int sldns_wire2str_edns_n3u_print(char** s, size_t* sl, uint8_t* data,
2235 w += sldns_str_print(s, sl, " SHA1");
2236 else w += sldns_str_print(s, sl, " %d", (int)data[i]);
2241 int sldns_wire2str_edns_subnet_print(char** s, size_t* sl, uint8_t* data,
2248 w += sldns_str_print(s, sl, "malformed subnet ");
2249 w += print_hex_buf(s, sl, data, len);
2261 w += sldns_str_print(s, sl, "trailingdata:");
2262 w += print_hex_buf(s, sl, data+4+4, len-4-4);
2263 w += sldns_str_print(s, sl, " ");
2268 w += sldns_str_print(s, sl, "ip4ntoperror ");
2269 w += print_hex_buf(s, sl, data+4+4, len-4-4);
2271 w += sldns_str_print(s, sl, "%s", buf);
2279 w += sldns_str_print(s, sl, "trailingdata:");
2280 w += print_hex_buf(s, sl, data+4+16, len-4-16);
2281 w += sldns_str_print(s, sl, " ");
2287 w += sldns_str_print(s, sl, "ip6ntoperror ");
2288 w += print_hex_buf(s, sl, data+4+4, len-4-4);
2290 w += sldns_str_print(s, sl, "%s", buf);
2293 w += print_hex_buf(s, sl, data+4+4, len-4-4);
2297 w += sldns_str_print(s, sl, "family %d ",
2299 w += print_hex_buf(s, sl, data, len);
2301 w += sldns_str_print(s, sl, "/%d scope /%d", (int)source, (int)scope);
2305 static int sldns_wire2str_edns_keepalive_print(char** s, size_t* sl,
2311 w += sldns_str_print(s, sl, "malformed keepalive ");
2312 w += print_hex_buf(s, sl, data, len);
2316 w += sldns_str_print(s, sl, "no timeout value (only valid for client option) ");
2319 w += sldns_str_print(s, sl, "timeout value in units of 100ms %u", (int)timeout);
2324 int sldns_wire2str_edns_ede_print(char** s, size_t* sl,
2334 w += sldns_str_print(s, sl, "malformed ede ");
2335 w += print_hex_buf(s, sl, data, len);
2342 w += sldns_str_print(s, sl, "%s", lt->name);
2343 else w += sldns_str_print(s, sl, "%d", (int)ede_code);
2348 w += sldns_str_print(s, sl, " ");
2359 w += sldns_str_print(s, sl, "\"");
2361 w += str_char_print(s, sl, data[i]);
2363 w += sldns_str_print(s, sl, "\"");
2365 w += print_hex_buf(s, sl, data+2, len-2);
2370 int sldns_wire2str_edns_option_print(char** s, size_t* sl,
2374 w += sldns_wire2str_edns_option_code_print(s, sl, option_code);
2375 w += sldns_str_print(s, sl, ": ");
2378 w += sldns_wire2str_edns_llq_print(s, sl, optdata, optlen);
2381 w += sldns_wire2str_edns_ul_print(s, sl, optdata, optlen);
2384 w += sldns_wire2str_edns_nsid_print(s, sl, optdata, optlen);
2387 w += sldns_wire2str_edns_dau_print(s, sl, optdata, optlen);
2390 w += sldns_wire2str_edns_dhu_print(s, sl, optdata, optlen);
2393 w += sldns_wire2str_edns_n3u_print(s, sl, optdata, optlen);
2396 w += sldns_wire2str_edns_subnet_print(s, sl, optdata, optlen);
2399 w += sldns_wire2str_edns_keepalive_print(s, sl, optdata, optlen);
2402 w += print_hex_buf(s, sl, optdata, optlen);
2405 w += sldns_wire2str_edns_ede_print(s, sl, optdata, optlen);
2409 w += print_hex_buf(s, sl, optdata, optlen);
2417 print_edns_opts(char** s, size_t* sl, uint8_t* rdata, size_t rdatalen)
2424 w += sldns_str_print(s, sl, " ; malformed: ");
2425 w += print_hex_buf(s, sl, rdata, rdatalen);
2435 w += sldns_str_print(s, sl, " ; malformed ");
2436 w += sldns_wire2str_edns_option_code_print(s, sl,
2438 w += sldns_str_print(s, sl, ": ");
2439 w += print_hex_buf(s, sl, rdata, rdatalen);
2442 w += sldns_str_print(s, sl, " ; ");
2443 w += sldns_wire2str_edns_option_print(s, sl, option_code,