PERFORCE change 136915 for review
Paolo Pisati
piso at FreeBSD.org
Wed Mar 5 14:59:08 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=136915
Change 136915 by piso at piso_ferret on 2008/03/05 14:58:42
Don't pass down the entire packet: GetDeltaAckIn and GetDeltaSeqOut.
Affected files ...
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#64 edit
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_db.c#28 edit
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#21 edit
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#23 edit
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_local.h#29 edit
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_proxy.c#25 edit
.. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#21 edit
Differences ...
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#64 (text+ko) ====
@@ -924,7 +924,8 @@
if (GetAckModified(lnk) == 1) {
int delta;
- delta = GetDeltaAckIn(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ delta = GetDeltaAckIn(tc->th_ack, lnk);
if (delta != 0) {
accumulate += twowords(&tc->th_ack);
tc->th_ack = htonl(ntohl(tc->th_ack) - delta);
@@ -1048,8 +1049,9 @@
/* Modify sequence number if necessary */
if (GetAckModified(lnk) == 1) {
int delta;
-
- delta = GetDeltaSeqOut(pip, lnk);
+
+ tc = (struct tcphdr *)ip_next(pip);
+ delta = GetDeltaSeqOut(tc->th_seq, lnk);
if (delta != 0) {
accumulate += twowords(&tc->th_seq);
tc->th_seq = htonl(ntohl(tc->th_seq) + delta);
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_db.c#28 (text+ko) ====
@@ -2007,7 +2007,7 @@
// XXX ip free
int
-GetDeltaAckIn(struct ip *pip, struct alias_link *lnk)
+GetDeltaAckIn(u_long ack, struct alias_link *lnk)
{
/*
Find out how much the ACK number has been altered for an incoming
@@ -2016,12 +2016,7 @@
*/
int i;
- struct tcphdr *tc;
int delta, ack_diff_min;
- u_long ack;
-
- tc = ip_next(pip);
- ack = tc->th_ack;
delta = 0;
ack_diff_min = -1;
@@ -2051,7 +2046,7 @@
// XXX ip free
int
-GetDeltaSeqOut(struct ip *pip, struct alias_link *lnk)
+GetDeltaSeqOut(u_long seq, struct alias_link *lnk)
{
/*
Find out how much the sequence number has been altered for an outgoing
@@ -2060,12 +2055,7 @@
*/
int i;
- struct tcphdr *tc;
int delta, seq_diff_min;
- u_long seq;
-
- tc = ip_next(pip);
- seq = tc->th_seq;
delta = 0;
seq_diff_min = -1;
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_ftp.c#21 (text+ko) ====
@@ -734,7 +734,8 @@
int delta;
SetAckModified(lnk);
- delta = GetDeltaSeqOut(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ delta = GetDeltaSeqOut(tc->th_seq, lnk);
AddSeq(pip, lnk, delta + slen - dlen);
}
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_irc.c#23 (text+ko) ====
@@ -432,7 +432,8 @@
int delta;
SetAckModified(lnk);
- delta = GetDeltaSeqOut(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ delta = GetDeltaSeqOut(tc->th_seq, lnk);
AddSeq(pip, lnk, delta + copyat + iCopy - dlen);
}
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_local.h#29 (text+ko) ====
@@ -298,8 +298,8 @@
void SetProxyPort(struct alias_link *_lnk, u_short _port);
void SetAckModified(struct alias_link *_lnk);
int GetAckModified(struct alias_link *_lnk);
-int GetDeltaAckIn(struct ip *_pip, struct alias_link *_lnk);
-int GetDeltaSeqOut(struct ip *_pip, struct alias_link *_lnk);
+int GetDeltaAckIn(u_long, struct alias_link *_lnk);
+int GetDeltaSeqOut(u_long, struct alias_link *lnk);
void AddSeq (struct ip *_pip, struct alias_link *_lnk, int _delta);
void SetExpire (struct alias_link *_lnk, int _expire);
void ClearCheckNewLink(struct libalias *la);
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_proxy.c#25 (text+ko) ====
@@ -453,7 +453,8 @@
int delta;
SetAckModified(lnk);
- delta = GetDeltaSeqOut(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ delta = GetDeltaSeqOut(tc->th_seq, lnk);
AddSeq(pip, lnk, delta + slen);
}
==== //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_smedia.c#21 (text+ko) ====
@@ -404,7 +404,8 @@
memcpy(data, newdata, new_dlen);
SetAckModified(lnk);
- delta = GetDeltaSeqOut(pip, lnk);
+ tc = (struct tcphdr *)ip_next(pip);
+ delta = GetDeltaSeqOut(tc->th_seq, lnk);
AddSeq(pip, lnk, delta + new_dlen - dlen);
new_len = htons(hlen + new_dlen);
More information about the p4-projects
mailing list