Hello Everybody,

 

Why enum module is not capable of parsing a response to a naptr query if this response donīt have any Authority and Additional RRs?

 

When it receives some response like this one, it work well:

 

Domain Name System (response)

    Transaction ID: 0xbe8b

    Flags: 0x8580 (Standard query response, No error)

        1... .... .... .... = Response: Message is a response

        .000 0... .... .... = Opcode: Standard query (0)

        .... .1.. .... .... = Authoritative: Server is an authority for domain

        .... ..0. .... .... = Truncated: Message is not truncated

        .... ...1 .... .... = Recursion desired: Do query recursively

        .... .... 1... .... = Recursion available: Server can do recursive queries

        .... .... ..0. .... = Answer authenticated: Answer/authority portion was not authenticated by the server

        .... .... .... 0000 = Reply code: No error (0)

    Questions: 1

    Answer RRs: 1

    Authority RRs: 1

    Additional RRs: 1

    Queries

         0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa: type NAPTR, class inet

            Name: 0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa

            Type: Naming authority pointer

            Class: inet

    Answers

         0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa: type NAPTR, class inet

            Name: 0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa

            Type: Naming authority pointer

            Class: inet

            Time to live: 0 time

            Data length: 69

            Data: u e2u+sip !^\+351215079290(.*)$!sip:\celso@sip.sapo.pt!

             

    Authoritative nameservers

        e164.arpa: type NS, class inet, ns dasilva.cet.pt

            Name: e164.arpa

            Type: Authoritative name server

            Class: inet

            Time to live: 0 time

            Data length: 16

            Name server: dasilva.cet.pt

    Additional records

        dasilva.cet.pt: type A, class inet, addr 10.112.128.6

            Name: dasilva.cet.pt

            Type: Host address

            Class: inet

            Time to live: 1 day

            Data length: 4

            Addr: 10.112.128.6

 

But when it receives a response like this one, it get a parsing error:

 

Domain Name System (response)

    Transaction ID: 0xbe8b

    Flags: 0x8580 (Standard query response, No error)

        1... .... .... .... = Response: Message is a response

        .000 0... .... .... = Opcode: Standard query (0)

        .... .1.. .... .... = Authoritative: Server is an authority for domain

        .... ..0. .... .... = Truncated: Message is not truncated

        .... ...1 .... .... = Recursion desired: Do query recursively

        .... .... 1... .... = Recursion available: Server can do recursive queries

        .... .... ..0. .... = Answer authenticated: Answer/authority portion was not authenticated by the server

        .... .... .... 0000 = Reply code: No error (0)

    Questions: 1

    Answer RRs: 1

    Authority RRs: 0

    Additional RRs: 0

    Queries

         0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa: type NAPTR, class inet

            Name: 0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa

            Type: Naming authority pointer

            Class: inet

    Answers

         0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa: type NAPTR, class inet

            Name: 0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa

            Type: Naming authority pointer

            Class: inet

            Time to live: 0 time

            Data length: 69

            Data: u e2u+sip !^\+351215079290(.*)$!sip:\celso@sip.sapo.pt!

 

The reported error on ser debug is:

 

9(24255) ERROR: get_record: rdata parse error

9(24255) ERROR: get_record

9(24255) enum_query(): No NAPTR record found for 0.9.2.9.7.0.5.1.2.1.5.3.e164.arpa..

 

Can somebody point us a solution to this problem?

 

Many Thanks,

Toni