git: 09a6fc8dbe2e - stable/12 - libalias: Remove unused function LibAliasCheckNewLink

Lutz Donnerhacke donner at FreeBSD.org
Mon Jun 7 05:52:43 UTC 2021


The branch stable/12 has been updated by donner:

URL: https://cgit.FreeBSD.org/src/commit/?id=09a6fc8dbe2e96317d8f88d4179e436df73d59fd

commit 09a6fc8dbe2e96317d8f88d4179e436df73d59fd
Author:     Lutz Donnerhacke <donner at FreeBSD.org>
AuthorDate: 2021-05-15 13:24:12 +0000
Commit:     Lutz Donnerhacke <donner at FreeBSD.org>
CommitDate: 2021-06-07 05:51: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)
    Differential Revision: https://reviews.freebsd.org/D30275
    
    (cherry picked from commit bfd41ba1fe1d0e40b6a813aeb0354cac8d884f5b)
---
 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 8a18c61b452e..030177eb622d 100644
--- a/sys/netinet/libalias/alias.c
+++ b/sys/netinet/libalias/alias.c
@@ -1329,7 +1329,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 */
@@ -1460,7 +1459,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 ff3072473d67..7c2faa62f7fc 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 79b0dd15db97..7876c650ccf5 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-all mailing list