Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-commits: [Wireshark-commits] master 83a7167: DHCP: Handle proxyDHCP on UDP port 4011.

From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Mon, 05 Nov 2018 08:43:33 +0000
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=83a71674a1c3edaa098934d81de1cf2052c2b740
Submitter: "Anders Broman <a.broman58@xxxxxxxxx>"
Changed: branch: master
Repository: wireshark

Commits:

83a7167 by Darius Davis (darius@xxxxxxxxxx):

    DHCP: Handle proxyDHCP on UDP port 4011.
    
    Proxy DHCP (proxyDHCP) is described in the PXE specification ver 2.1 (section
    2.2.3) as a mechanism to allow a PXE client to query a separate service,
    listening on port 4011, to obtain boot file information.  Other than the UDP
    port number used, the protocol is identical to regular DHCP.
    
    This change implements support for dissecting proxyDHCP packets.
    
    The change expands the default pref value for the DHCP/BOOTP UDP ports list to
    include port 4011, and if the dissector receives a packet for port 4011 which
    passes a rough heuristic (the DHCP magic number is mandatory for proxyDHCP --
    there is no such thing as BOOTP-only proxyDHCP), the packet passes through to
    the regular DHCP dissector.
    
    There's currently no separate preference to allow configuration of the expected
    proxyDHCP port number...  This seems reasonable, since the port number 4011 is
    stipulated in the PXE specification, and variations would seem unlikely.
    
    Testing Done: Opened a capture file containing a DHCP conversation using
       proxyDHCP, and saw the traffic on UDP port 4011 was now decoded as DHCP and
       reported as "proxyDHCP", instead of being generic UDP.  Regular DHCP traffic
       in the same capture file is still decoded as it was before.  Produced some
       deliberately malformed requests (bad magic number) and tweaked the
       DHCP/BOOTP port list in prefs, and saw the expected behavior in each case.
       20,000 iterations of fuzz-test.sh with a small corpus of captures from
       PXE-booting systems.
    
    Change-Id: Ifd485cd75834a51bdfd6f3ba3fe517c4a892d9d0
    Reviewed-on: https://code.wireshark.org/review/30498
    Petri-Dish: Anders Broman <a.broman58@xxxxxxxxx>
    Tested-by: Petri Dish Buildbot
    Reviewed-by: Anders Broman <a.broman58@xxxxxxxxx>
    

Actions performed:

    from  0a5770a   extcap: add option to set proxycommand to ssh sessions.
     add  83a7167   DHCP: Handle proxyDHCP on UDP port 4011.


Summary of changes:
 epan/dissectors/packet-dhcp.c | 21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)