git: 0c381b7f0570 - main - libutil: Add symbol versioning
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 02 Aug 2025 14:06:33 UTC
The branch main has been updated by des:
URL: https://cgit.FreeBSD.org/src/commit/?id=0c381b7f0570cb118b5d82c3d1777f8b1fdeffd1
commit 0c381b7f0570cb118b5d82c3d1777f8b1fdeffd1
Author: Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2025-08-02 14:05:31 +0000
Commit: Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2025-08-02 14:05:31 +0000
libutil: Add symbol versioning
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D51694
---
ObsoleteFiles.inc | 3 ++
lib/libutil/Makefile | 5 +-
lib/libutil/Symbol.map | 127 +++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 134 insertions(+), 1 deletion(-)
diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index 99a528806695..0a4a7a073dcf 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -51,6 +51,9 @@
# xargs -n1 | sort | uniq -d;
# done
+# 20250802: libutil bumped to 10
+OLD_LIBS+=lib/libutil.so.9
+
# 20250801: libopencsd libraries moved to /usr/lib and made private
OLD_FILES+=lib/libopencsd.so.0
OLD_FILES+=usr/lib/libopencsd.a
diff --git a/lib/libutil/Makefile b/lib/libutil/Makefile
index 2d92c5ba1916..d445bc5dec3b 100644
--- a/lib/libutil/Makefile
+++ b/lib/libutil/Makefile
@@ -7,7 +7,7 @@ PACKAGE= runtime
.PATH: ${SRCTOP}/lib/libc/gen # for pw_scan.c
LIB= util
-SHLIB_MAJOR= 9
+SHLIB_MAJOR= 10
SRCS= _secure_path.c auth.c cpuset.c expand_number.c flopen.c fparseln.c \
ftime.c getlocalbase.c gr_util.c \
@@ -29,6 +29,9 @@ CFLAGS+= -DINET6
CFLAGS+= -I${.CURDIR} -I${SRCTOP}/lib/libc/gen/
+VERSION_DEF= ${SRCTOP}/lib/libc/Versions.def
+SYMBOL_MAPS= ${.CURDIR}/Symbol.map
+
MAN+= cpuset.3 expand_number.3 flopen.3 fparseln.3 ftime.3 getlocalbase.3 \
hexdump.3 humanize_number.3 kinfo_getallproc.3 kinfo_getfile.3 \
kinfo_getproc.3 kinfo_getvmmap.3 kinfo_getvmobject.3 kld.3 \
diff --git a/lib/libutil/Symbol.map b/lib/libutil/Symbol.map
new file mode 100644
index 000000000000..d4bac5b5f53e
--- /dev/null
+++ b/lib/libutil/Symbol.map
@@ -0,0 +1,127 @@
+FBSD_1.8 {
+ _secure_path;
+ auth_cat;
+ auth_checknologin;
+ auth_getval;
+ auth_hostok;
+ auth_timeok;
+ auth_ttyok;
+ build_iovec_argf;
+ build_iovec;
+ checkpath_allow_file;
+ checkpath;
+ chkdoreload;
+ cpuset_parselist;
+ domainset_parselist;
+ expand_number;
+ flopen;
+ flopenat;
+ forkpty;
+ fparseln;
+ free_iovec;
+ ftime;
+ getlocalbase;
+ getmnt_silent;
+ getmntopts;
+ getmntpoint;
+ gr_add;
+ gr_copy;
+ gr_dup;
+ gr_equal;
+ gr_fini;
+ gr_init;
+ gr_lock;
+ gr_make;
+ gr_mkdb;
+ gr_scan;
+ gr_tmp;
+ hexdump;
+ humanize_number;
+ in_lt;
+ in_ltm;
+ in_ltms;
+ in_lts;
+ kinfo_getallproc;
+ kinfo_getfile;
+ kinfo_getproc;
+ kinfo_getswapvmobject;
+ kinfo_getvmmap;
+ kinfo_getvmobject;
+ kld_isloaded;
+ kld_load;
+ login_close;
+ login_getcapbool;
+ login_getcapenum;
+ login_getcaplist;
+ login_getcapnum;
+ login_getcapsize;
+ login_getcapstr;
+ login_getcaptime;
+ login_getclass;
+ login_getclassbyname;
+ login_getpath;
+ login_getpwclass;
+ login_getstyle;
+ login_getuserclass;
+ login_hostok;
+ login_setcryptfmt;
+ login_str2inlist;
+ login_strinlist;
+ login_timelist;
+ login_tty;
+ login_ttyok;
+ openpty;
+ parse_lt;
+ pidfile_close;
+ pidfile_fileno;
+ pidfile_open;
+ pidfile_remove;
+ pidfile_signal;
+ pidfile_write;
+ properties_free;
+ properties_read;
+ property_find;
+ pw_copy;
+ pw_dup;
+ pw_edit;
+ pw_equal;
+ pw_fini;
+ pw_init;
+ pw_initpwd;
+ pw_lock;
+ pw_make_v7;
+ pw_make;
+ pw_mkdb;
+ pw_scan;
+ pw_tempname;
+ pw_tmp;
+ quota_check_path;
+ quota_close;
+ quota_convert;
+ quota_fsname;
+ quota_maxid;
+ quota_off;
+ quota_on;
+ quota_open;
+ quota_qfname;
+ quota_read;
+ quota_write_limits;
+ quota_write_usage;
+ realhostname_sa;
+ realhostname;
+ rmslashes;
+ setclasscontext;
+ setclasscpumask;
+ setclassenvironment;
+ setclassresources;
+ setusercontext;
+ trimdomain;
+ uu_lock_txfr;
+ uu_lock;
+ uu_lockerr;
+ uu_unlock;
+};
+
+FBSDprivate_1.0 {
+ __pw_initpwd;
+};