* Broken-up patch #10
@ 2004-05-28 23:18 Tommy McCabe
0 siblings, 0 replies; only message in thread
From: Tommy McCabe @ 2004-05-28 23:18 UTC (permalink / raw)
To: linux-8086
Cleans ktcp up a bit and removes the confusing and
errorful "function to define a function".
diff -ruN ./elks-stuff/elksnet/ktcp/vjhc.c
./elks/elksnet/ktcp/vjhc.c
--- ./elks-stuff/elksnet/ktcp/vjhc.c 2004-05-28
16:01:54.000000000 -0400
+++ ./elks/elksnet/ktcp/vjhc.c 2004-04-20
22:08:26.000000000 -0400
@@ -113,10 +113,7 @@
}
}
-DEFUN
-(int ip_vjhc_compress, (pkt),
- pkt_ut *pkt
-)
+int ip_vjhc_compress(pkt_ut *pkt)
{
iphdr_t *ip_hdr, *oip_hdr;
tcphdr_t *tcp_hdr, *otcp_hdr;
@@ -127,107 +124,112 @@
__u32 delta, deltaA, deltaS;
__u16 cksum;
- if (pkt->p_size < IP_MIN_HDR_SIZE +
TCP_MIN_HDR_SIZE)
+ if(pkt->p_size < IP_MIN_HDR_SIZE + TCP_MIN_HDR_SIZE)
{
#ifdef DEBUG
- if (opt_d) fprintf(stderr,"ip_vjhc_compress: packet
too small %d\n",
- pkt->p_size);
+ if(opt_d)
+ {
+ fprintf(stderr,"ip_vjhc_compress: packet too small
%d\n", pkt->p_size);
+ }
#endif
return PPP_TYPE_IP;
}
- ip_hdr= (iphdr_t *)(pkt->p_data + pkt->p_offset);
- if ((ntohs(ip_hdr->frag_off) &
- (IH_MORE_FRAGS | IH_FRAGOFF_MASK)) != 0)
+ ip_hdr = (iphdr_t *)(pkt->p_data + pkt->p_offset);
+ if((ntohs(ip_hdr->frag_off) & (IH_MORE_FRAGS |
IH_FRAGOFF_MASK)) != 0)
{
#ifdef DEBUG
- if (opt_d) fprintf(stderr,"ip_vjhc_compress:
fragmented packet\n");
+ if(opt_d)
+ {
+ fprintf(stderr,"ip_vjhc_compress: fragmented
packet\n");
+ }
#endif
return PPP_TYPE_IP;
}
ip_hdr_len= (ip_hdr->version_ihl & IH_IHL_MASK) * 4;
tcp_hdr= (tcphdr_t *)(pkt->p_data + pkt->p_offset +
ip_hdr_len);
- if ((tcp_hdr->flags & (TF_SYN | TF_FIN | TF_RST |
TF_ACK)) !=
- TF_ACK)
+ if((tcp_hdr->flags & (TF_SYN | TF_FIN | TF_RST |
TF_ACK)) != TF_ACK)
{
#ifdef DEBUG
- if (opt_d) fprintf(stderr,"ip_vjhc_compress: wrong
flags in TCP header\n");
+ if(opt_d)
+ {
+ fprintf(stderr,"ip_vjhc_compress: wrong flags in
TCP header\n");
+ }
#endif
return PPP_TYPE_IP;
}
tcp_hdr_len= TCP_DATAOFF(tcp_hdr); /* !!! */
tot_len= ip_hdr_len + tcp_hdr_len;
#ifdef DEBUG
- if (opt_d) {
- fprintf(stderr,"ip_vjhc_compress: packet with size
%d\n\t",
- pkt->p_size);
- for (cp= (__u8 *)pkt->p_data+pkt->p_offset; cp <
(__u8 *)pkt->p_data +
- pkt->p_offset + ip_hdr_len; cp++)
- {
- fprintf(stderr,"%x ", *cp);
- }
- fprintf(stderr,"\n\t");
- for (; cp < (__u8 *)pkt->p_data + pkt->p_offset +
tot_len; cp++)
- {
- fprintf(stderr, "%x ", *cp);
- }
- fprintf(stderr, "\n\t");
- for (; cp < (__u8 *)pkt->p_data + pkt->p_offset +
pkt->p_size; cp++)
- {
- fprintf(stderr, "%x ", *cp);
- }
- fprintf(stderr, "\n");
- }
+ if(opt_d)
+ {
+ fprintf(stderr,"ip_vjhc_compress: packet with size
%d\n\t", pkt->p_size);
+ for (cp= (__u8 *)pkt->p_data+pkt->p_offset; cp <
(__u8 *)pkt->p_data +pkt->p_offset + ip_hdr_len; cp++)
+ {
+ fprintf(stderr,"%x ", *cp);
+ }
+ fprintf(stderr,"\n\t");
+ for (; cp < (__u8 *)pkt->p_data + pkt->p_offset +
tot_len; cp++)
+ {
+ fprintf(stderr, "%x ", *cp);
+ }
+ fprintf(stderr, "\n\t");
+ for(; cp < (__u8 *)pkt->p_data + pkt->p_offset +
pkt->p_size; cp++)
+ {
+ fprintf(stderr, "%x ", *cp);
+ }
+ fprintf(stderr, "\n");
+ }
#endif
for (prev= NULL, state= xmit_head;; )
{
- if (ip_hdr->saddr == state->s_src_ip &&
- ip_hdr->daddr == state->s_dst_ip &&
- *(__u32 *)&tcp_hdr->sport ==
- state->s_srcdst_port)
+ if((ip_hdr->saddr == state->s_src_ip) &&
(ip_hdr->daddr == state->s_dst_ip) && (*(__u32
*)&tcp_hdr->sport == state->s_srcdst_port))
{
#ifdef DEBUG
- if (opt_d) fprintf(stderr, "ip_vjhc_compress:
found entry\n");
+ if(opt_d)
+ {
+ fprintf(stderr, "ip_vjhc_compress: found
entry\n");
+ }
#endif
- if (prev != NULL)
+ if(prev != NULL)
{
#ifdef DEBUG
- if (opt_d) fprintf(stderr, "ip_vjhc_compress:
moving entry to front\n");
+ if(opt_d) fprintf(stderr, "ip_vjhc_compress:
moving entry to front\n");
#endif
- prev->s_next= state->s_next;
- state->s_next= xmit_head;
- xmit_head= state;
+ prev->s_next = state->s_next;
+ state->s_next = xmit_head;
+ xmit_head = state;
}
break;
}
- next= state->s_next;
- if (next != NULL)
+ next = state->s_next;
+ if(next != NULL)
{
- prev= state;
- state= next;
+ prev = state;
+ state = next;
continue;
}
-
/* Not found */
- if (prev != NULL)
+ if(prev != NULL)
+ {
+ prev->s_next = state->s_next;
+ state->s_next = xmit_head;
+ xmit_head = state;
+ }
+ state->s_src_ip = ip_hdr->saddr;
+ state->s_dst_ip = ip_hdr->daddr;
+ state->s_srcdst_port = *(__u32 *)&tcp_hdr->sport;
+#ifdef DEBUG
+ if(opt_d)
{
- prev->s_next= state->s_next;
- state->s_next= xmit_head;
- xmit_head= state;
- }
- state->s_src_ip= ip_hdr->saddr;
- state->s_dst_ip= ip_hdr->daddr;
- state->s_srcdst_port= *(__u32 *)&tcp_hdr->sport;
-#ifdef DEBUG
- if (opt_d) fprintf(stderr,"ip_vjhc_compress: new
entry: %x, %x, %x\n",
- state->s_src_ip, state->s_dst_ip,
- state->s_srcdst_port );
+ fprintf(stderr,"ip_vjhc_compress: new entry: %x,
%x, %x\n", state->s_src_ip, state->s_dst_ip,
state->s_srcdst_port);
+ }
#endif
memcpy(state->s_data, ip_hdr, tot_len);
- xmit_last= ip_hdr->protocol= state->s_indx;
+ xmit_last = ip_hdr->protocol = state->s_indx;
return PPP_TYPE_VJHC_UNCOMPR;
- }
- oip_hdr= (iphdr_t *)(state->s_data);
- otcp_hdr= (tcphdr_t *)(state->s_data + ip_hdr_len);
+ }
+ oip_hdr = (iphdr_t *)(state->s_data);
+ otcp_hdr = (tcphdr_t *)(state->s_data + ip_hdr_len);
if (*(__u16 *)&ip_hdr->version_ihl !=
*(__u16 *)&oip_hdr->version_ihl ||
@@ -388,10 +390,8 @@
return PPP_TYPE_VJHC_COMPR;
}
-DEFUN
-(void ip_vjhc_arr_uncompr, (pkt),
- pkt_ut *pkt
-)
+
+void ip_vjhc_arr_uncompr(pkt_ut *pkt)
{
rcv_state_ut *state;
iphdr_t *ip_hdr;
@@ -430,10 +430,7 @@
}
-DEFUN
-(void ip_vjhc_arr_compr, (pkt),
- pkt_ut *pkt
-)
+void ip_vjhc_arr_compr(pkt_ut *pkt)
{
iphdr_t *ip_hdr;
tcphdr_t *tcp_hdr;
__________________________________
Do you Yahoo!?
Friends. Fun. Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-05-28 23:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-28 23:18 Broken-up patch #10 Tommy McCabe
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox