pike.git
/
lib
/
modules
/
Protocols.pmod
/
DNS.pmod
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/lib/modules/Protocols.pmod/DNS.pmod:166:
case T_MINFO: string rmailbx = mkname(entry->rmailbx, pos, c); return rmailbx + mkname(entry->emailbx, pos+sizeof(rmailbx), c); case T_SRV: return sprintf("%2c%2c%2c", entry->priority, entry->weight, entry->port) + mkname(entry->target||"", pos+6, c); case T_A: return sprintf("%@1c", (array(int))((entry->a||"0.0.0.0")/".")[0..3]); case T_AAAA: return make_raw_addr6(entry->aaaa);
+
case T_A6:
+
if( stringp( entry->a6 ) || !entry->a6 )
+
return "\0"+make_raw_addr6(entry->a6);
+
return sprintf( "%c%s%s",
+
entry->a6->prefixlen,
+
make_raw_addr6(entry->a6->address)[entry->a6->prefixlen/8..],
+
entry->a6->prefixname||"");
case T_SOA: string mname = mkname(entry->mname, pos, c); return mname + mkname(entry->rname, pos+sizeof(mname), c) + sprintf("%4c%4c%4c%4c%4c", entry->serial, entry->refresh, entry->retry, entry->expire, entry->minimum); case T_NAPTR: string rnaptr = sprintf("%2c%2c", entry->order, entry->preference); rnaptr += sprintf("%1c%s%1c%s%1c%s%s", sizeof(entry->flags || ""), entry->flags || "", sizeof(entry->service || ""), entry->service || "",