in reply to Re^4: How to create a DNS message in perl?
in thread How to create a DNS message in perl?

That won't work for www.some.domain.com. Use a loop.

my $QNAME= "www.google.com"; my $QNAME_packed = ''; for my $part ( split( /\./, $QNAME ) ) { $QNAME_packed .= pack( 'C', length($part) ) . $part; } $QNAME_packed .= pack('C', 0)

Or

my $QNAME= "www.google.com"; my $QNAME_packed = ''; for my $part ( split( /\./, $QNAME ) ) { $QNAME_packed .= pack( 'C/a*', $part ); } $QNAME_packed .= pack('C', 0)

Or

my $QNAME= "www.google.com"; my $QNAME_packed = ''; for my $part ( split( /\./, $QNAME ), '' ) { $QNAME_packed .= pack( 'C/a*', $part ); }

Or if requiring Perl 5.8 is acceptable

my $QNAME= "www.google.com"; my $QNAME_packed = pack( '(C/a*)*', split( /\./, $QNAME ), '' ) );

Replies are listed 'Best First'.
Re^6: How to create a DNS message in perl?
by sanjay nayak (Sexton) on Jul 31, 2008 at 06:40 UTC

    Hi

    Thanks a lot for your help. Now my problem was solved.

    Regd's
    Sanjay