CVSROOT:        /cvs
Module name:    src
Changes by:     ren...@cvs.openbsd.org  2016/05/23 10:08:18

Modified files:
        usr.sbin/ldpd  : Makefile hello.c ldpd.h packet.c parse.y 
Added files:
        usr.sbin/ldpd  : util.c 

Log message:
Several improvements in the parsing of UDP/Hello packets.

* Fix check of the packet's size and the "PDU Length" field;
* Add check for the "Message Length" field;
* Check for invalid labelspace earlier.
* Use if_lookup() on disc_recv_iface() to reduce one level of identation;

Additionally, add the following safeguards:
* Check for unicast link hellos;
* Check for multicast targeted hellos;
* Validate packet's source address;
* Validate received transport-address.

Put the ancillary function bad_ip_addr() into a new file, util.c, which
will be used later for several other things.

Reply via email to