Page MenuHomeFreeBSD

D33625.diff
No OneTemporary

D33625.diff

diff --git a/sys/netinet/libalias/alias.c b/sys/netinet/libalias/alias.c
--- a/sys/netinet/libalias/alias.c
+++ b/sys/netinet/libalias/alias.c
@@ -912,6 +912,9 @@
/* Walk out chain. */
error = find_handler(OUT, UDP, la, pip, &ad);
+ if (error < 0)
+ return (PKT_ALIAS_IGNORED);
+
/* If UDP checksum is not zero, adjust since source port is */
/* being aliased and source address is being altered */
if (ud->uh_sum != 0) {
@@ -981,6 +984,9 @@
/* Walk out chain. */
error = find_handler(IN, TCP, la, pip, &ad);
+ if (error < 0)
+ return (PKT_ALIAS_IGNORED);
+
alias_address = GetAliasAddress(lnk);
original_address = GetOriginalAddress(lnk);
proxy_address = GetProxyAddress(lnk);
@@ -1150,6 +1156,9 @@
/* Walk out chain. */
error = find_handler(OUT, TCP, la, pip, &ad);
+ if (error < 0)
+ return (PKT_ALIAS_IGNORED);
+
/* Adjust TCP checksum since source port is being aliased
* and source address is being altered */
accumulate = tc->th_sport;

File Metadata

Mime Type
text/plain
Expires
Sun, Mar 1, 8:18 AM (21 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29105466
Default Alt Text
D33625.diff (1005 B)

Event Timeline