diff options
author | glebius <glebius@FreeBSD.org> | 2005-04-11 10:16:17 +0000 |
---|---|---|
committer | glebius <glebius@FreeBSD.org> | 2005-04-11 10:16:17 +0000 |
commit | ce0cfd9c63389ae4c2fcbaa8afbbe5e60d543849 (patch) | |
tree | f4f4fda7b8d3ee9ad202b7ffccfa52efb07e4436 /sys/netgraph/netflow/netflow.c | |
parent | 17be4cbfa047a243a155d8a89ab2d2d73385453b (diff) | |
download | FreeBSD-src-ce0cfd9c63389ae4c2fcbaa8afbbe5e60d543849.zip FreeBSD-src-ce0cfd9c63389ae4c2fcbaa8afbbe5e60d543849.tar.gz |
Remove goto.
Diffstat (limited to 'sys/netgraph/netflow/netflow.c')
-rw-r--r-- | sys/netgraph/netflow/netflow.c | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/sys/netgraph/netflow/netflow.c b/sys/netgraph/netflow/netflow.c index cd84e90..296849d4 100644 --- a/sys/netgraph/netflow/netflow.c +++ b/sys/netgraph/netflow/netflow.c @@ -432,26 +432,22 @@ ng_netflow_flow_add(priv_p priv, struct ip *ip, iface_p iface, * ip packet assebmling here. Anyway, (in)famous trafd works this way - * and nobody complains yet :) */ - if(ip->ip_off & htons(IP_OFFMASK)) - goto flow_rec_done; - - switch(r.r_ip_p) { - case IPPROTO_TCP: - { - register struct tcphdr *tcp; - - tcp = (struct tcphdr *)((caddr_t )ip + hlen); - r.r_sport = tcp->th_sport; - r.r_dport = tcp->th_dport; - tcp_flags = tcp->th_flags; - break; - } - case IPPROTO_UDP: - r.r_ports = *(uint32_t *)((caddr_t )ip + hlen); - break; - } - -flow_rec_done: + if ((ip->ip_off & htons(IP_OFFMASK)) == 0) + switch(r.r_ip_p) { + case IPPROTO_TCP: + { + register struct tcphdr *tcp; + + tcp = (struct tcphdr *)((caddr_t )ip + hlen); + r.r_sport = tcp->th_sport; + r.r_dport = tcp->th_dport; + tcp_flags = tcp->th_flags; + break; + } + case IPPROTO_UDP: + r.r_ports = *(uint32_t *)((caddr_t )ip + hlen); + break; + } slot = ip_hash(&r); |