Wireshark-commits: [Wireshark-commits] master faeefc9: DHCPv6: fix for bogus errors. Detailed error
From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Thu, 2 Jul 2020 21:49:46 +0000
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=faeefc9d59c616f855be94715943ff5f9d74d421
Submitter: "Cal Turney <cturney111@xxxxxxxxx>"
Changed: branch: master
Repository: wireshark

Commits:

faeefc9 by Cal Turney (cturney111@xxxxxxxxx):

    DHCPv6: fix for bogus errors. Detailed error msgs
    
    Routine "dhcpv6_domain()" of packet-dhcpv6.c has the following
    issues:
    a. It is unaware of partial (relative) domain names which unlike
       FQDNs must *not* be root terminated(0); otherwise, the resolver
       interprets them as top-level domains (TLDs) such as "com." and
       "org.".
    b. Malformed errors are not thrown when they should be and when
       thrown, it does so for the wrong reason.
    c. No detail is provided as to the nature of a malformation.
    d. The routine does not know the difference between an "empty"
       and "root-only" domain name.
    Routine "dhcpv6_option():
    The meanings of flags octet of the in the OPTION_CLIENT_FQDN
    option sent by the client are different that those of the server.
    These differences are not reflected in the display. In addition,
    the description of the 'N' bit is incorrect in either case. The
    sender type must be determined in order to label them correctly
    and to detect conflicts among them.
    These changes fully address the above issues. Six types of
    domain name errors are now detected. I believe the unusually
    large amount of detailed comments with RFC references and
    explanations were needed in this case due to the introduction
    of concepts such as partial domain names that were not
    recognized as such and thus improperly handled and labelled.
    The subtree option headers have been converted from "Text only"
    to named fields (dhcpv6.option.type_str). Example captures are
    attached to the bug report.
    The msgtype global variable has been eliminatd.
    
    Bug: 16627
    Change-Id: I8d9bf1164835ece2272cc92dd0917322024422d2
    Reviewed-on: https://code.wireshark.org/review/37661
    Petri-Dish: Alexis La Goutte <alexis.lagoutte@xxxxxxxxx>
    Reviewed-by: Cal Turney <cturney111@xxxxxxxxx>
    

Actions performed:

    from  b46a554   Packetlogger: check for more packet types in the libwiretap heuristics.
     add  faeefc9   DHCPv6: fix for bogus errors. Detailed error msgs


Summary of changes:
 epan/dissectors/packet-dhcpv6.c | 790 ++++++++++++++++++++++++++++++----------
 1 file changed, 598 insertions(+), 192 deletions(-)