patch-2.4.3 linux/drivers/net/slhc.c
Next file: linux/drivers/net/smc-mca.c
Previous file: linux/drivers/net/skfp/srf.c
Back to the patch index
Back to the overall index
- Lines: 32
- Date:
Tue Mar 6 22:44:16 2001
- Orig file:
v2.4.2/linux/drivers/net/slhc.c
- Orig date:
Thu Jul 6 19:27:48 2000
diff -u --recursive --new-file v2.4.2/linux/drivers/net/slhc.c linux/drivers/net/slhc.c
@@ -81,8 +81,6 @@
#include <net/checksum.h>
#include <asm/unaligned.h>
-int last_retran;
-
static unsigned char *encode(unsigned char *cp, unsigned short n);
static long decode(unsigned char **cpp);
static unsigned char * put16(unsigned char *cp, unsigned short x);
@@ -256,8 +254,7 @@
ip = (struct iphdr *) icp;
/* Bail if this packet isn't TCP, or is an IP fragment */
- if(ip->protocol != IPPROTO_TCP || (ntohs(ip->frag_off) & 0x1fff) ||
- (ip->frag_off & 32)){
+ if (ip->protocol != IPPROTO_TCP || (ntohs(ip->frag_off) & 0x3fff)) {
/* Send as regular IP */
if(ip->protocol != IPPROTO_TCP)
comp->sls_o_nontcp++;
@@ -351,10 +348,9 @@
*/
oth = &cs->cs_tcp;
- if(last_retran
- || ip->version != cs->cs_ip.version || ip->ihl != cs->cs_ip.ihl
+ if(ip->version != cs->cs_ip.version || ip->ihl != cs->cs_ip.ihl
|| ip->tos != cs->cs_ip.tos
- || (ip->frag_off & 64) != (cs->cs_ip.frag_off & 64)
+ || (ip->frag_off & htons(0x4000)) != (cs->cs_ip.frag_off & htons(0x4000))
|| ip->ttl != cs->cs_ip.ttl
|| th->doff != cs->cs_tcp.doff
|| (ip->ihl > 5 && memcmp(ip+1,cs->cs_ipopt,((ip->ihl)-5)*4) != 0)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)