Apply by doing: cd /usr/src patch -p0 < 008_ip6rthdr.patch And then build, install and boot a new kernel: cd /usr/src/sys/arch/`arch -s`/conf config GENERIC cd ../compile/GENERIC make depend && make && sudo make install If you are using the multiprocessor kernel, replace GENERIC by GENERIC.MP above. Index: sys/netinet6/ip6_input.c =================================================================== RCS file: /cvs/src/sys/netinet6/ip6_input.c,v retrieving revision 1.78 retrieving revision 1.78.2.1 diff -u -p -r1.78 -r1.78.2.1 --- sys/netinet6/ip6_input.c 3 Aug 2007 06:43:12 -0000 1.78 +++ sys/netinet6/ip6_input.c 25 Feb 2008 00:00:00 -0000 1.78.2.1 @@ -1,4 +1,4 @@ -/* $OpenBSD: ip6_input.c,v 1.78 2007/08/03 06:43:12 itojun Exp $ */ +/* $OpenBSD: ip6_input.c,v 1.78.2.1 2008/02/25 00:00:00 henning Exp $ */ /* $KAME: ip6_input.c,v 1.188 2001/03/29 05:34:31 itojun Exp $ */ /* @@ -737,7 +737,7 @@ ip6_check_rh0hdr(struct mbuf *m) return (1); } - if (off + sizeof(opt6) > lim) { + if (off + sizeof(rthdr) > lim) { /* packet to short to make sense */ return (1); }