comparison mail_resolver.t @ 775:a6764c2a9f12

Tests: fixed DNS label coding in resolver tests. No actual functional changes.
author Sergey Kandaurov <pluknet@nginx.com>
date Thu, 05 Nov 2015 14:02:53 +0300
parents 481d705b8610
children ffdd33c64193
comparison
equal deleted inserted replaced
774:adc32621fb09 775:a6764c2a9f12
296 '1.1.0.0.127.in-addr.arpa'); 296 '1.1.0.0.127.in-addr.arpa');
297 297
298 } elsif ($port == 8085) { 298 } elsif ($port == 8085) {
299 # uncompressed answer 299 # uncompressed answer
300 300
301 push @rdata, pack("(w/a*)6x n2N n(w/a*)3x", 301 push @rdata, pack("(C/a*)6x n2N n(C/a*)3x",
302 ('1', '0', '0', '127', 'in-addr', 'arpa'), 302 ('1', '0', '0', '127', 'in-addr', 'arpa'),
303 PTR, IN, $ttl, 15, ('a', 'example', 'net')); 303 PTR, IN, $ttl, 15, ('a', 'example', 'net'));
304 304
305 } elsif ($port == 8086) { 305 } elsif ($port == 8086) {
306 push @rdata, rd_name(CNAME, $ttl, 'a.example.net'); 306 push @rdata, rd_name(CNAME, $ttl, 'a.example.net');
309 } elsif ($name eq '1.1.0.0.127.in-addr.arpa' && $type == PTR) { 309 } elsif ($name eq '1.1.0.0.127.in-addr.arpa' && $type == PTR) {
310 push @rdata, rd_name(PTR, $ttl, 'a.example.net'); 310 push @rdata, rd_name(PTR, $ttl, 'a.example.net');
311 } 311 }
312 312
313 $len = @name; 313 $len = @name;
314 pack("n6 (w/a*)$len x n2", $id, $hdr | $rcode, 1, scalar @rdata, 314 pack("n6 (C/a*)$len x n2", $id, $hdr | $rcode, 1, scalar @rdata,
315 0, 0, @name, $type, $class) . join('', @rdata); 315 0, 0, @name, $type, $class) . join('', @rdata);
316 } 316 }
317 317
318 sub rd_name { 318 sub rd_name {
319 my ($type, $ttl, $name) = @_; 319 my ($type, $ttl, $name) = @_;
320 my ($rdlen, @rdname); 320 my ($rdlen, @rdname);
321 321
322 @rdname = split /\./, $name; 322 @rdname = split /\./, $name;
323 $rdlen = length(join '', @rdname) + @rdname + 1; 323 $rdlen = length(join '', @rdname) + @rdname + 1;
324 pack("n3N n(w/a*)* x", 0xc00c, $type, IN, $ttl, $rdlen, @rdname); 324 pack("n3N n(C/a*)* x", 0xc00c, $type, IN, $ttl, $rdlen, @rdname);
325 } 325 }
326 326
327 sub rd_addr { 327 sub rd_addr {
328 my ($ttl, $addr) = @_; 328 my ($ttl, $addr) = @_;
329 329