git: bfd41ba1fe1d - main - libalias: Remove unused function LibAliasCheckNewLink
Lutz Donnerhacke
donner at FreeBSD.org
Mon May 31 11:05:12 UTC 2021
The branch main has been updated by donner:
URL: https://cgit.FreeBSD.org/src/commit/?id=bfd41ba1fe1d0e40b6a813aeb0354cac8d884f5b
commit bfd41ba1fe1d0e40b6a813aeb0354cac8d884f5b
Author: Lutz Donnerhacke <donner at FreeBSD.org>
AuthorDate: 2021-05-15 13:24:12 +0000
Commit: Lutz Donnerhacke <donner at FreeBSD.org>
CommitDate: 2021-05-31 10:53:57 +0000
libalias: Remove unused function LibAliasCheckNewLink
The functionality to detect a newly created link after processing a
single packet is decoupled from the packet processing. Every new
packet is processed asynchronously and will reset the indicator, hence
the function is unusable. I made a Google search for third party code,
which uses the function, and failed to find one.
That's why the function should be removed: It unusable and unused.
A much simplified API/ABI will remain in anything below 14.
Discussed with: kp
Reviewed by: manpages (bcr)
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D30275
---
sys/netinet/libalias/alias.c | 2 --
sys/netinet/libalias/alias.h | 4 +++-
sys/netinet/libalias/alias_db.c | 17 +++--------------
sys/netinet/libalias/alias_local.h | 4 ----
sys/netinet/libalias/libalias.3 | 12 +-----------
5 files changed, 7 insertions(+), 32 deletions(-)
diff --git a/sys/netinet/libalias/alias.c b/sys/netinet/libalias/alias.c
index 0e2756affcb4..39e9b060623d 100644
--- a/sys/netinet/libalias/alias.c
+++ b/sys/netinet/libalias/alias.c
@@ -1330,7 +1330,6 @@ LibAliasInLocked(struct libalias *la, struct ip *pip, int maxpacketsize)
goto getout;
}
HouseKeeping(la);
- ClearCheckNewLink(la);
alias_addr = pip->ip_dst;
/* Defense against mangled packets */
@@ -1461,7 +1460,6 @@ LibAliasOutLocked(struct libalias *la,
goto getout;
}
HouseKeeping(la);
- ClearCheckNewLink(la);
/* Defense against mangled packets */
if (ntohs(pip->ip_len) > maxpacketsize
diff --git a/sys/netinet/libalias/alias.h b/sys/netinet/libalias/alias.h
index 36f1ca168823..558a750b4fd8 100644
--- a/sys/netinet/libalias/alias.h
+++ b/sys/netinet/libalias/alias.h
@@ -120,10 +120,12 @@ void *LibAliasGetFragment(struct libalias *, void *_ptr);
int LibAliasSaveFragment(struct libalias *, void *_ptr);
/* Miscellaneous functions. */
-int LibAliasCheckNewLink(struct libalias *);
unsigned short LibAliasInternetChecksum(struct libalias *, unsigned short *_ptr, int _nbytes);
void LibAliasSetTarget(struct libalias *, struct in_addr _target_addr);
+/* never used and never worked, to be removed in FreeBSD 14 */
+int LibAliasCheckNewLink(struct libalias *);
+
/* Transparent proxying routines. */
int LibAliasProxyRule(struct libalias *, const char *_cmd);
diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c
index 7a84cf310d5a..0273cc84773d 100644
--- a/sys/netinet/libalias/alias_db.c
+++ b/sys/netinet/libalias/alias_db.c
@@ -1675,7 +1675,6 @@ FindOriginalAddress(struct libalias *la, struct in_addr alias_addr)
lnk = FindLinkIn(la, ANY_ADDR, alias_addr,
0, 0, LINK_ADDR, 0);
if (lnk == NULL) {
- la->newDefaultLink = 1;
if (la->targetAddress.s_addr == INADDR_ANY)
return (alias_addr);
else if (la->targetAddress.s_addr == INADDR_NONE)
@@ -2052,13 +2051,6 @@ SetExpire(struct alias_link *lnk, int expire)
}
}
-void
-ClearCheckNewLink(struct libalias *la)
-{
- LIBALIAS_LOCK_ASSERT(la);
- la->newDefaultLink = 0;
-}
-
void
SetProtocolFlags(struct alias_link *lnk, int pflags)
{
@@ -2548,15 +2540,12 @@ getout:
return (res);
}
+/* never used and never worked, to be removed in FreeBSD 14 */
int
LibAliasCheckNewLink(struct libalias *la)
{
- int res;
-
- LIBALIAS_LOCK(la);
- res = la->newDefaultLink;
- LIBALIAS_UNLOCK(la);
- return (res);
+ (void)la;
+ return (0);
}
#ifndef NO_FW_PUNCH
diff --git a/sys/netinet/libalias/alias_local.h b/sys/netinet/libalias/alias_local.h
index 63bfd857f14f..61cd30737ce5 100644
--- a/sys/netinet/libalias/alias_local.h
+++ b/sys/netinet/libalias/alias_local.h
@@ -118,9 +118,6 @@ struct libalias {
#else
FILE *logDesc;
#endif
- /* Indicates if a new aliasing link has been created
- * after a call to PacketAliasIn/Out(). */
- int newDefaultLink;
#ifndef NO_FW_PUNCH
/* File descriptor to be able to control firewall.
@@ -323,7 +320,6 @@ int GetDeltaSeqOut(u_long, struct alias_link *lnk);
void AddSeq(struct alias_link *lnk, int delta, u_int ip_hl,
u_short ip_len, u_long th_seq, u_int th_off);
void SetExpire (struct alias_link *_lnk, int _expire);
-void ClearCheckNewLink(struct libalias *la);
void SetProtocolFlags(struct alias_link *_lnk, int _pflags);
int GetProtocolFlags(struct alias_link *_lnk);
void SetDestCallId(struct alias_link *_lnk, u_int16_t _cid);
diff --git a/sys/netinet/libalias/libalias.3 b/sys/netinet/libalias/libalias.3
index beef2ff7fca5..85ebe55f527c 100644
--- a/sys/netinet/libalias/libalias.3
+++ b/sys/netinet/libalias/libalias.3
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 1, 2020
+.Dd May 31, 2021
.Dt LIBALIAS 3
.Os
.Sh NAME
@@ -863,16 +863,6 @@ This allows external machines to talk directly to internal machines if they
can route packets to the machine in question.
.Ed
.Pp
-.Ft int
-.Fn LibAliasCheckNewLink "struct libalias *"
-.Bd -ragged -offset indent
-This function returns a non-zero value when a new aliasing link is created.
-In circumstances where incoming traffic is being sequentially sent to
-different local servers, this function can be used to trigger when
-.Fn LibAliasSetTarget
-is called to change the default target address.
-.Ed
-.Pp
.Ft u_short
.Fn LibAliasInternetChecksum "struct libalias *" "u_short *buffer" "int nbytes"
.Bd -ragged -offset indent
More information about the dev-commits-src-main
mailing list