PERFORCE change 136861 for review
Paolo Pisati
piso at FreeBSD.org
Tue Mar 4 22:22:18 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=136861
Change 136861 by piso at piso_newluxor on 2008/03/04 22:22:08
Don't pass pkt ptr to functions that don't need it: TcpMonitorIn and
TcpMonitorOut.
Affected files ...
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#63 edit
Differences ...
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#63 (text+ko) ====
@@ -170,50 +170,42 @@
*/
/* Local prototypes */
-static void TcpMonitorIn(struct ip *, struct alias_link *);
+static void TcpMonitorIn(u_char, struct alias_link *);
-static void TcpMonitorOut(struct ip *, struct alias_link *);
+static void TcpMonitorOut(u_char, struct alias_link *);
-// XXX ip free
static void
-TcpMonitorIn(struct ip *pip, struct alias_link *lnk)
+TcpMonitorIn(u_char th_flags, struct alias_link *lnk)
{
- struct tcphdr *tc;
- tc = (struct tcphdr *)ip_next(pip);
-
switch (GetStateIn(lnk)) {
case ALIAS_TCP_STATE_NOT_CONNECTED:
- if (tc->th_flags & TH_RST)
+ if (th_flags & TH_RST)
SetStateIn(lnk, ALIAS_TCP_STATE_DISCONNECTED);
- else if (tc->th_flags & TH_SYN)
+ else if (th_flags & TH_SYN)
SetStateIn(lnk, ALIAS_TCP_STATE_CONNECTED);
break;
case ALIAS_TCP_STATE_CONNECTED:
- if (tc->th_flags & (TH_FIN | TH_RST))
+ if (th_flags & (TH_FIN | TH_RST))
SetStateIn(lnk, ALIAS_TCP_STATE_DISCONNECTED);
break;
}
}
-// XXX ip free
static void
-TcpMonitorOut(struct ip *pip, struct alias_link *lnk)
+TcpMonitorOut(u_char th_flags, struct alias_link *lnk)
{
- struct tcphdr *tc;
-
- tc = (struct tcphdr *)ip_next(pip);
switch (GetStateOut(lnk)) {
case ALIAS_TCP_STATE_NOT_CONNECTED:
- if (tc->th_flags & TH_RST)
+ if (th_flags & TH_RST)
SetStateOut(lnk, ALIAS_TCP_STATE_DISCONNECTED);
- else if (tc->th_flags & TH_SYN)
+ else if (th_flags & TH_SYN)
SetStateOut(lnk, ALIAS_TCP_STATE_CONNECTED);
break;
case ALIAS_TCP_STATE_CONNECTED:
- if (tc->th_flags & (TH_FIN | TH_RST))
+ if (th_flags & (TH_FIN | TH_RST))
SetStateOut(lnk, ALIAS_TCP_STATE_DISCONNECTED);
break;
}
@@ -956,7 +948,8 @@
ADJUST_CHECKSUM(accumulate, pip->ip_sum);
/* Monitor TCP connection state */
- TcpMonitorIn(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ TcpMonitorIn(tc->th_flags, lnk);
return (PKT_ALIAS_OK);
}
@@ -1038,7 +1031,8 @@
alias_address = GetAliasAddress(lnk);
/* Monitor TCP connection state */
- TcpMonitorOut(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ TcpMonitorOut(tc->th_flags, lnk);
/* Walk out chain. */
error = find_handler(OUT, TCP, la, pip, &ad);
More information about the p4-projects
mailing list