Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Apr 1996 06:35:29 +0000
From:      Poul-Henning Kamp <phk@critter.tfs.com>
To:        Paul Traina <pst@shockwave.com>
Cc:        current@FreeBSD.org, Jim Fleming <JimFleming@unety.net>
Subject:   Re: SLIP: Check IP Version (please test) 
Message-ID:  <10415.830327729@critter.tfs.com>
In-Reply-To: Your message of "Tue, 23 Apr 1996 18:47:05 MST." <199604240147.SAA28795@precipice.shockwave.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
> This patch seems to be irrelevant in any case.  Only IPv4 packets should
> be passed to the SLIP driver.  SLIP is not a multiprotocol point-to-point
> protocol, PPP is.
> 
> IPvX x!=4 is a different protocol.  SLIP is not supported in IPv6.  Please
> don't slow down the code path by adding this change.

I agree, the point is that people play with IPv8 and it breaks slip.
If SLIP is only for IPv4, it should discard other packets...

And hey, how much overhead is this ???

Poul-Henning

> 
> Paul
> 
>   From: Poul-Henning Kamp <phk@critter.tfs.com>
>   Subject: SLIP: Check IP Version (please test)
>   
>   Somebody running slip with header compression please test this patch.
>   
>   Poul-Henning
>   
>   > I am starting to develop a substantialliy modified version of the IP prot
oc
> >>ol
>   .
>   > As specified in the IP protocol the ip_v (IP Version) field of the IP hea
de
> >>r
>   > should be set to 4. (see /usr/src/sys/netinet/ip.h)
>   > 
>   > It is not desirable for new versions of IP to "break" existing code. I ha
ve
> >> n
>   ot
>   > provide this but in studying the SLIP code I see that there is never real
ly
>   > a check done to see of the IP header is of version 4.
>   
>   Index: if_sl.c
>   ===================================================================
>   RCS file: /home/ncvs/src/sys/net/if_sl.c,v
>   retrieving revision 1.37
>   diff -u -r1.37 if_sl.c
>   --- if_sl.c	1996/04/07 17:39:09	1.37
>   +++ if_sl.c	1996/04/23 20:03:53
>   @@ -561,7 +561,8 @@
>    			} while (m1 = m1->m_next);
>    		}
>    #endif
>   -		if ((ip = mtod(m, struct ip *))->ip_p == IPPROTO_TCP) {
>   +		if ((ip = mtod(m, struct ip *))->ip_v == IPVERSION) &&
>   +		    (ip = mtod(m, struct ip *))->ip_p == IPPROTO_TCP) {
>    			if (sc->sc_if.if_flags & SC_COMPRESS)
>    				*mtod(m, u_char *) |= sl_compress_tcp(m, ip,
>    				    &sc->sc_comp, 1);
>   --
>   Poul-Henning Kamp           | phk@FreeBSD.ORG       FreeBSD Core-team.
>   http://www.freebsd.org/~phk | phk@login.dknet.dk    Private mailbox.
>   whois: [PHK]                | phk@ref.tfs.com       TRW Financial Systems, 
In
> >>c.
>   Future will arrive by its own means, progress not so.

--
Poul-Henning Kamp           | phk@FreeBSD.ORG       FreeBSD Core-team.
http://www.freebsd.org/~phk | phk@login.dknet.dk    Private mailbox.
whois: [PHK]                | phk@ref.tfs.com       TRW Financial Systems, Inc.
Future will arrive by its own means, progress not so.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?10415.830327729>