Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Apr 2024 13:12:44 GMT
From:      Dmitry Sivachenko <demon@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: c4a32bb1a84e - main - net/haproxy: update patch from upstream, no functional changes.
Message-ID:  <202404021312.432DCi9q054381@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by demon:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c4a32bb1a84e718231d47871d6073c18f0471ae4

commit c4a32bb1a84e718231d47871d6073c18f0471ae4
Author:     Dmitry Sivachenko <demon@FreeBSD.org>
AuthorDate: 2024-04-02 13:05:40 +0000
Commit:     Dmitry Sivachenko <demon@FreeBSD.org>
CommitDate: 2024-04-02 13:05:40 +0000

    net/haproxy: update patch from upstream, no functional changes.
---
 net/haproxy/files/patch-src_tools.c   | 56 +++++++++++++++++++++++++++--------
 net/haproxy25/files/patch-src_tools.c | 56 +++++++++++++++++++++++++++--------
 net/haproxy26/files/patch-src_tools.c | 56 +++++++++++++++++++++++++++--------
 net/haproxy27/files/patch-src_tools.c | 56 +++++++++++++++++++++++++++--------
 net/haproxy28/files/patch-src_tools.c | 56 +++++++++++++++++++++++++++--------
 5 files changed, 215 insertions(+), 65 deletions(-)

diff --git a/net/haproxy/files/patch-src_tools.c b/net/haproxy/files/patch-src_tools.c
index 598f50cbe965..ebdf24de0fc0 100644
--- a/net/haproxy/files/patch-src_tools.c
+++ b/net/haproxy/files/patch-src_tools.c
@@ -1,32 +1,62 @@
---- src/tools.c.orig
+From c03a02388257e21810c534d50a93658e61a83494 Mon Sep 17 00:00:00 2001
+From: Brooks Davis <brooks@one-eyed-alien.net>
+Date: Wed, 28 Feb 2024 18:12:40 +0000
+Subject: [PATCH] MINOR: tools: use public interface for FreeBSD
+ get_exec_path()
+
+Where possible (FreeBSD 13+), use the public, documented interface to
+the ELF auxiliary argument vector: elf_aux_info().
+
+__elf_aux_vector is a private interface exported so that the runtime
+linker can set its value during process startup and not intended for
+public consumption.  In FreeBSD 15 it has been removed from libc and
+moved to libsys.
+---
+ src/tools.c |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/tools.c b/src/tools.c
+index e1ba241..4759222 100644
+--- src/tools.c
 +++ src/tools.c
-@@ -17,9 +17,7 @@
+@@ -17,9 +17,14 @@
  #endif
  
  #if defined(__FreeBSD__)
--#include <elf.h>
--#include <dlfcn.h>
--extern void *__elf_aux_vector;
++#include <sys/param.h>
++#if __FreeBSD_version < 1300058
+ #include <elf.h>
+ #include <dlfcn.h>
+ extern void *__elf_aux_vector;
++#else
 +#include <sys/auxv.h>
++#endif
  #endif
  
  #if defined(__NetBSD__)
-@@ -5018,13 +5016,11 @@
+@@ -5018,6 +5023,7 @@ const char *get_exec_path()
  	if (execfn && execfn != ENOENT)
  		ret = (const char *)execfn;
  #elif defined(__FreeBSD__)
--	Elf_Auxinfo *auxv;
--	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
--		if (auxv->a_type == AT_EXECPATH) {
--			ret = (const char *)auxv->a_un.a_ptr;
--			break;
--		}
--	}
++#if __FreeBSD_version < 1300058
+ 	Elf_Auxinfo *auxv;
+ 	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
+ 		if (auxv->a_type == AT_EXECPATH) {
+@@ -5025,6 +5031,14 @@ const char *get_exec_path()
+ 			break;
+ 		}
+ 	}
++#else
 +	static char execpath[MAXPATHLEN];
++
 +	if (execpath[0] == '\0')
 +		elf_aux_info(AT_EXECPATH, execpath, MAXPATHLEN);
 +	if (execpath[0] != '\0')
 +		ret = execpath;
++#endif
  #elif defined(__NetBSD__)
  	AuxInfo *auxv;
  	for (auxv = _dlauxinfo(); auxv->a_type != AT_NULL; ++auxv) {
+-- 
+1.7.10.4
+
diff --git a/net/haproxy25/files/patch-src_tools.c b/net/haproxy25/files/patch-src_tools.c
index 598f50cbe965..ebdf24de0fc0 100644
--- a/net/haproxy25/files/patch-src_tools.c
+++ b/net/haproxy25/files/patch-src_tools.c
@@ -1,32 +1,62 @@
---- src/tools.c.orig
+From c03a02388257e21810c534d50a93658e61a83494 Mon Sep 17 00:00:00 2001
+From: Brooks Davis <brooks@one-eyed-alien.net>
+Date: Wed, 28 Feb 2024 18:12:40 +0000
+Subject: [PATCH] MINOR: tools: use public interface for FreeBSD
+ get_exec_path()
+
+Where possible (FreeBSD 13+), use the public, documented interface to
+the ELF auxiliary argument vector: elf_aux_info().
+
+__elf_aux_vector is a private interface exported so that the runtime
+linker can set its value during process startup and not intended for
+public consumption.  In FreeBSD 15 it has been removed from libc and
+moved to libsys.
+---
+ src/tools.c |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/tools.c b/src/tools.c
+index e1ba241..4759222 100644
+--- src/tools.c
 +++ src/tools.c
-@@ -17,9 +17,7 @@
+@@ -17,9 +17,14 @@
  #endif
  
  #if defined(__FreeBSD__)
--#include <elf.h>
--#include <dlfcn.h>
--extern void *__elf_aux_vector;
++#include <sys/param.h>
++#if __FreeBSD_version < 1300058
+ #include <elf.h>
+ #include <dlfcn.h>
+ extern void *__elf_aux_vector;
++#else
 +#include <sys/auxv.h>
++#endif
  #endif
  
  #if defined(__NetBSD__)
-@@ -5018,13 +5016,11 @@
+@@ -5018,6 +5023,7 @@ const char *get_exec_path()
  	if (execfn && execfn != ENOENT)
  		ret = (const char *)execfn;
  #elif defined(__FreeBSD__)
--	Elf_Auxinfo *auxv;
--	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
--		if (auxv->a_type == AT_EXECPATH) {
--			ret = (const char *)auxv->a_un.a_ptr;
--			break;
--		}
--	}
++#if __FreeBSD_version < 1300058
+ 	Elf_Auxinfo *auxv;
+ 	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
+ 		if (auxv->a_type == AT_EXECPATH) {
+@@ -5025,6 +5031,14 @@ const char *get_exec_path()
+ 			break;
+ 		}
+ 	}
++#else
 +	static char execpath[MAXPATHLEN];
++
 +	if (execpath[0] == '\0')
 +		elf_aux_info(AT_EXECPATH, execpath, MAXPATHLEN);
 +	if (execpath[0] != '\0')
 +		ret = execpath;
++#endif
  #elif defined(__NetBSD__)
  	AuxInfo *auxv;
  	for (auxv = _dlauxinfo(); auxv->a_type != AT_NULL; ++auxv) {
+-- 
+1.7.10.4
+
diff --git a/net/haproxy26/files/patch-src_tools.c b/net/haproxy26/files/patch-src_tools.c
index 598f50cbe965..ebdf24de0fc0 100644
--- a/net/haproxy26/files/patch-src_tools.c
+++ b/net/haproxy26/files/patch-src_tools.c
@@ -1,32 +1,62 @@
---- src/tools.c.orig
+From c03a02388257e21810c534d50a93658e61a83494 Mon Sep 17 00:00:00 2001
+From: Brooks Davis <brooks@one-eyed-alien.net>
+Date: Wed, 28 Feb 2024 18:12:40 +0000
+Subject: [PATCH] MINOR: tools: use public interface for FreeBSD
+ get_exec_path()
+
+Where possible (FreeBSD 13+), use the public, documented interface to
+the ELF auxiliary argument vector: elf_aux_info().
+
+__elf_aux_vector is a private interface exported so that the runtime
+linker can set its value during process startup and not intended for
+public consumption.  In FreeBSD 15 it has been removed from libc and
+moved to libsys.
+---
+ src/tools.c |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/tools.c b/src/tools.c
+index e1ba241..4759222 100644
+--- src/tools.c
 +++ src/tools.c
-@@ -17,9 +17,7 @@
+@@ -17,9 +17,14 @@
  #endif
  
  #if defined(__FreeBSD__)
--#include <elf.h>
--#include <dlfcn.h>
--extern void *__elf_aux_vector;
++#include <sys/param.h>
++#if __FreeBSD_version < 1300058
+ #include <elf.h>
+ #include <dlfcn.h>
+ extern void *__elf_aux_vector;
++#else
 +#include <sys/auxv.h>
++#endif
  #endif
  
  #if defined(__NetBSD__)
-@@ -5018,13 +5016,11 @@
+@@ -5018,6 +5023,7 @@ const char *get_exec_path()
  	if (execfn && execfn != ENOENT)
  		ret = (const char *)execfn;
  #elif defined(__FreeBSD__)
--	Elf_Auxinfo *auxv;
--	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
--		if (auxv->a_type == AT_EXECPATH) {
--			ret = (const char *)auxv->a_un.a_ptr;
--			break;
--		}
--	}
++#if __FreeBSD_version < 1300058
+ 	Elf_Auxinfo *auxv;
+ 	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
+ 		if (auxv->a_type == AT_EXECPATH) {
+@@ -5025,6 +5031,14 @@ const char *get_exec_path()
+ 			break;
+ 		}
+ 	}
++#else
 +	static char execpath[MAXPATHLEN];
++
 +	if (execpath[0] == '\0')
 +		elf_aux_info(AT_EXECPATH, execpath, MAXPATHLEN);
 +	if (execpath[0] != '\0')
 +		ret = execpath;
++#endif
  #elif defined(__NetBSD__)
  	AuxInfo *auxv;
  	for (auxv = _dlauxinfo(); auxv->a_type != AT_NULL; ++auxv) {
+-- 
+1.7.10.4
+
diff --git a/net/haproxy27/files/patch-src_tools.c b/net/haproxy27/files/patch-src_tools.c
index 598f50cbe965..ebdf24de0fc0 100644
--- a/net/haproxy27/files/patch-src_tools.c
+++ b/net/haproxy27/files/patch-src_tools.c
@@ -1,32 +1,62 @@
---- src/tools.c.orig
+From c03a02388257e21810c534d50a93658e61a83494 Mon Sep 17 00:00:00 2001
+From: Brooks Davis <brooks@one-eyed-alien.net>
+Date: Wed, 28 Feb 2024 18:12:40 +0000
+Subject: [PATCH] MINOR: tools: use public interface for FreeBSD
+ get_exec_path()
+
+Where possible (FreeBSD 13+), use the public, documented interface to
+the ELF auxiliary argument vector: elf_aux_info().
+
+__elf_aux_vector is a private interface exported so that the runtime
+linker can set its value during process startup and not intended for
+public consumption.  In FreeBSD 15 it has been removed from libc and
+moved to libsys.
+---
+ src/tools.c |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/tools.c b/src/tools.c
+index e1ba241..4759222 100644
+--- src/tools.c
 +++ src/tools.c
-@@ -17,9 +17,7 @@
+@@ -17,9 +17,14 @@
  #endif
  
  #if defined(__FreeBSD__)
--#include <elf.h>
--#include <dlfcn.h>
--extern void *__elf_aux_vector;
++#include <sys/param.h>
++#if __FreeBSD_version < 1300058
+ #include <elf.h>
+ #include <dlfcn.h>
+ extern void *__elf_aux_vector;
++#else
 +#include <sys/auxv.h>
++#endif
  #endif
  
  #if defined(__NetBSD__)
-@@ -5018,13 +5016,11 @@
+@@ -5018,6 +5023,7 @@ const char *get_exec_path()
  	if (execfn && execfn != ENOENT)
  		ret = (const char *)execfn;
  #elif defined(__FreeBSD__)
--	Elf_Auxinfo *auxv;
--	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
--		if (auxv->a_type == AT_EXECPATH) {
--			ret = (const char *)auxv->a_un.a_ptr;
--			break;
--		}
--	}
++#if __FreeBSD_version < 1300058
+ 	Elf_Auxinfo *auxv;
+ 	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
+ 		if (auxv->a_type == AT_EXECPATH) {
+@@ -5025,6 +5031,14 @@ const char *get_exec_path()
+ 			break;
+ 		}
+ 	}
++#else
 +	static char execpath[MAXPATHLEN];
++
 +	if (execpath[0] == '\0')
 +		elf_aux_info(AT_EXECPATH, execpath, MAXPATHLEN);
 +	if (execpath[0] != '\0')
 +		ret = execpath;
++#endif
  #elif defined(__NetBSD__)
  	AuxInfo *auxv;
  	for (auxv = _dlauxinfo(); auxv->a_type != AT_NULL; ++auxv) {
+-- 
+1.7.10.4
+
diff --git a/net/haproxy28/files/patch-src_tools.c b/net/haproxy28/files/patch-src_tools.c
index 598f50cbe965..ebdf24de0fc0 100644
--- a/net/haproxy28/files/patch-src_tools.c
+++ b/net/haproxy28/files/patch-src_tools.c
@@ -1,32 +1,62 @@
---- src/tools.c.orig
+From c03a02388257e21810c534d50a93658e61a83494 Mon Sep 17 00:00:00 2001
+From: Brooks Davis <brooks@one-eyed-alien.net>
+Date: Wed, 28 Feb 2024 18:12:40 +0000
+Subject: [PATCH] MINOR: tools: use public interface for FreeBSD
+ get_exec_path()
+
+Where possible (FreeBSD 13+), use the public, documented interface to
+the ELF auxiliary argument vector: elf_aux_info().
+
+__elf_aux_vector is a private interface exported so that the runtime
+linker can set its value during process startup and not intended for
+public consumption.  In FreeBSD 15 it has been removed from libc and
+moved to libsys.
+---
+ src/tools.c |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/src/tools.c b/src/tools.c
+index e1ba241..4759222 100644
+--- src/tools.c
 +++ src/tools.c
-@@ -17,9 +17,7 @@
+@@ -17,9 +17,14 @@
  #endif
  
  #if defined(__FreeBSD__)
--#include <elf.h>
--#include <dlfcn.h>
--extern void *__elf_aux_vector;
++#include <sys/param.h>
++#if __FreeBSD_version < 1300058
+ #include <elf.h>
+ #include <dlfcn.h>
+ extern void *__elf_aux_vector;
++#else
 +#include <sys/auxv.h>
++#endif
  #endif
  
  #if defined(__NetBSD__)
-@@ -5018,13 +5016,11 @@
+@@ -5018,6 +5023,7 @@ const char *get_exec_path()
  	if (execfn && execfn != ENOENT)
  		ret = (const char *)execfn;
  #elif defined(__FreeBSD__)
--	Elf_Auxinfo *auxv;
--	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
--		if (auxv->a_type == AT_EXECPATH) {
--			ret = (const char *)auxv->a_un.a_ptr;
--			break;
--		}
--	}
++#if __FreeBSD_version < 1300058
+ 	Elf_Auxinfo *auxv;
+ 	for (auxv = __elf_aux_vector; auxv->a_type != AT_NULL; ++auxv) {
+ 		if (auxv->a_type == AT_EXECPATH) {
+@@ -5025,6 +5031,14 @@ const char *get_exec_path()
+ 			break;
+ 		}
+ 	}
++#else
 +	static char execpath[MAXPATHLEN];
++
 +	if (execpath[0] == '\0')
 +		elf_aux_info(AT_EXECPATH, execpath, MAXPATHLEN);
 +	if (execpath[0] != '\0')
 +		ret = execpath;
++#endif
  #elif defined(__NetBSD__)
  	AuxInfo *auxv;
  	for (auxv = _dlauxinfo(); auxv->a_type != AT_NULL; ++auxv) {
+-- 
+1.7.10.4
+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202404021312.432DCi9q054381>