Date: Sun, 16 Jul 2006 19:48:21 GMT From: Clément Lecigne <clem1@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 101715 for review Message-ID: <200607161948.k6GJmLlo068494@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=101715 Change 101715 by clem1@clem1_ipv6vulns on 2006/07/16 19:47:39 IPComp support for pcs, libnet and isicng. Affected files ... .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#4 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/Makefile.in#2 edit .. //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ipcompsicng.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#7 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-headers.h#6 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-structures.h#5 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.in#4 edit .. //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/libnet_build_ipcomp.c#1 add .. //depot/projects/soc2006/clem1_ipv6vulns/pcs/pcs/packets/ipcomp.py#1 add Differences ... ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/ChangeLog#4 (text+ko) ==== @@ -1,4 +1,8 @@ -ISICNG (v0.0.3) 06/07/05, by Clément Lecigne (clem1@FreeBSD.org) +ISICNG (v0.01.4) 06/07/16, by Clément Lecigne (clem1@FreeBSD.org) + + o ipcompsicng generates random ipcomp (IPCompression) packets. + +ISICNG (v0.01.3) 06/07/05, by Clément Lecigne (clem1@FreeBSD.org) o randipv6() improvements o -L number of link local random ipv6 addresses (in percent) @@ -7,7 +11,7 @@ will generate a random ipv6 packet as data... especially for *6_ctlinput() functions fuzzing. -ISICNG (v0.0.2) 06/07/04, by Clément Lecigne (clem1@FreeBSD.org) +ISICNG (v0.01.2) 06/07/04, by Clément Lecigne (clem1@FreeBSD.org) o Some new feature added to icmpsicng.c o new parameters related to packet size @@ -17,7 +21,7 @@ o bug fix around checksum calculation. -ISICNG (v0.0.1) 06/07/03, by Clément Lecigne (clem1@FreeBSD.org) +ISICNG (v0.01.1) 06/07/03, by Clément Lecigne (clem1@FreeBSD.org) o Port of all *sic.c to IPv6 isicng.c supports IPv6 and extension headers fuzzing. ==== //depot/projects/soc2006/clem1_ipv6vulns/fuzzers/isicng/Makefile.in#2 (text+ko) ==== @@ -15,7 +15,7 @@ VERSION = 0.01 DEFS += -DVERSION=\"$(VERSION)\" -BINS = isicng tcpsicng udpsicng icmpsicng +BINS = isicng tcpsicng udpsicng icmpsicng ipcompsicng all: $(BINS) @@ -31,6 +31,9 @@ icmpsicng: icmpsicng.c isicng.h gcc -o icmpsicng icmpsicng.c -Wall -W $(CFLAGS) $(DEFS) $(LIBS) $(LDFLAGS) +ipcompsicng: ipcompsicng.c isicng.h + gcc -o ipcompsicng ipcompsicng.c -Wall -W $(CFLAGS) $(DEFS) $(LIBS) $(LDFLAGS) + realclean: distclean distclean: clean rm -f config.cache config.log config.status ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-functions.h#7 (text+ko) ==== @@ -1348,6 +1348,21 @@ u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); /** + * Builds an RFC 2393 IP Compression header. + * @param nx next header field + * @param flags reserved for future use + * @param cpi compression parameter index + * @param payload optional payload or NULL + * @param payload_s payload length or 0 + * @param l pointer to a libnet context + * @param ptag protocol tag to modify an existing header, 0 to build a new one + * @return protocol tag value on success, -1 on error + */ +libnet_ptag_t +libnet_build_ipcomp(u_int8_t nx, u_int8_t flags, u_int16_t cpi, +u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); + +/** * Builds an RFC 1035 version 4 DNS header. Additional DNS payload information * should be specified using the payload interface. * @param id DNS packet id ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-headers.h#6 (text+ko) ==== @@ -90,6 +90,7 @@ #define LIBNET_IPSEC_ESP_HDR_H 0x0c /**< IPSEC ESP header: 12 bytes */ #define LIBNET_IPSEC_ESP_FTR_H 0x02 /**< IPSEC ESP footer: 2 bytes */ #define LIBNET_IPSEC_AH_H 0x10 /**< IPSEC AH header: 16 bytes */ +#define LIBNET_IPCOMP_H 0x04 /**< IPCOMP header: 4 bytes */ #define LIBNET_ISL_H 0x1a /**< ISL header: 26 bytes */ #define LIBNET_GRE_H 0x04 /**< GRE header: 4 bytes */ #define LIBNET_GRE_SRE_H 0x04 /**< GRE SRE header: 4 bytes */ @@ -1329,6 +1330,23 @@ /* + * IPCOMP header + * IP Compression porotocol + * Static header size: 4 bytes + * RFC2393 + */ +#ifndef IPPROTO_IPCOMP +#define IPPROTO_IPCOMP 108 +#endif +struct libnet_ipcomp_hdr +{ + u_int8_t nh; /* Next header */ + u_int8_t flags; /* Flags */ + u_int16_t cpi; /* Compression param idex */ +}; + + +/* * ISL header * Cisco Inter-Switch Link * Static header size: 26 bytes ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/include/libnet/libnet-structures.h#5 (text+ko) ==== @@ -164,6 +164,7 @@ #define LIBNET_PBLOCK_ICMPV6_OPT_PI_H 0x4f /* ICMP6 option prefix information header */ #define LIBNET_PBLOCK_ICMPV6_OPT_RH_H 0x50 /* ICMP6 option redirect header */ #define LIBNET_PBLOCK_ICMPV6_OPT_MTU_H 0x51 /* ICMP6 option MTU header */ +#define LIBNET_PBLOCK_IPCOMP_H 0x52 /* IPCOMP header */ u_int8_t flags; /* control flags */ #define LIBNET_PBLOCK_DO_CHECKSUM 0x01 /* needs a checksum */ libnet_ptag_t ptag; /* protocol block tag */ ==== //depot/projects/soc2006/clem1_ipv6vulns/libnet/src/Makefile.in#4 (text+ko) ==== @@ -130,6 +130,7 @@ libnet_build_igmp.c \ libnet_build_ip.c \ libnet_build_ipsec.c \ + libnet_build_ipcomp.c \ libnet_build_isl.c \ libnet_build_mpls.c \ libnet_build_ntp.c \ @@ -188,7 +189,7 @@ libnet_build_dhcp.$(OBJEXT) libnet_build_dns.$(OBJEXT) \ libnet_build_ethernet.$(OBJEXT) libnet_build_fddi.$(OBJEXT) \ libnet_build_gre.$(OBJEXT) libnet_build_icmpv6.$(OBJEXT) \ - libnet_build_icmpv4.$(OBJEXT) \ + libnet_build_icmpv4.$(OBJEXT) libnet_build_ipcomp.$(OBJEXT) \ libnet_build_igmp.$(OBJEXT) libnet_build_ip.$(OBJEXT) \ libnet_build_ipsec.$(OBJEXT) libnet_build_isl.$(OBJEXT) \ libnet_build_mpls.$(OBJEXT) libnet_build_ntp.$(OBJEXT) \
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200607161948.k6GJmLlo068494>