Page MenuHomeFreeBSD

libutil: Add symbol versioning
ClosedPublic

Authored by des on Aug 2 2025, 10:06 AM.
Tags
None
Referenced Files
F132462418: D51694.id159620.diff
Fri, Oct 17, 3:31 AM
F132440279: D51694.id159628.diff
Thu, Oct 16, 11:31 PM
Unknown Object (File)
Thu, Oct 16, 9:06 AM
Unknown Object (File)
Thu, Oct 9, 5:26 PM
Unknown Object (File)
Thu, Oct 9, 5:26 PM
Unknown Object (File)
Thu, Oct 9, 5:26 PM
Unknown Object (File)
Thu, Oct 9, 5:26 PM
Unknown Object (File)
Thu, Oct 9, 5:26 PM
Subscribers

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 65921
Build 62804: arc lint + arc unit

Event Timeline

des requested review of this revision.Aug 2 2025, 10:06 AM
des retitled this revision from libutil: Add symbol versioning. to libutil: Add symbol versioning.Aug 2 2025, 10:16 AM

@arrowd please add libutil.so.9 to misc/compat14x when this is committed

This revision is now accepted and ready to land.Aug 2 2025, 1:59 PM

FWIW the following have no man pages:

auth_getval
checkpath_allow_file
domainset_parselist
getmnt_silent
gr_add gr_copy gr_dup gr_equal gr_fin gr_init gr_lock gr_make gr_mkdb gr_scan gr_tmp
kinfo_getswapvmobject
login_getcapenum login_hostok login_str2inlist login_strinlist login_timelist login_ttyok
pidfile_signal
pw_initpwd
quota_check_path quota_convert quota_maxid quota_off quota_on
setclasscpumask

We should make sure these are all intended to be public

FWIW the following have no man pages:
[...]
We should make sure these are all intended to be public

  • auth_getval() is a compatibility stub, we can drop it now (it will be provided by the misc/compat14x port's copy of libutil.so.9)
  • checkpath_allow_file() is undocumented but used by mount(8)
  • domainset_parselist() does have a man page in main (but not in 14)
  • getmnt_silent is documented in mntopts(3), we don't usually have MLINKs for variables (with notable exceptions such as errno(2) and environ(7))
  • gr_*() are undocumented but used by pw(8)
  • kinfo_getswapvmobject() is undocumented but used by systat(8)
  • login_getcapenum() is documented but missing an MLINK
  • login_hostok(), login_strinlist(), login_str2inlist(), login_timelist(), login_ttyok() are undocumented and only used internally, but going by code comments, clearly intended to be public
  • pidfile_signal() is undocumented but clearly intended to be public, and used by mount(8)
  • pw_initpwd() is documented but missing an MLINK
  • quota_check_path(), quota_convert(), quota_maxid(), quota_off(), quota_on() are documented but missing MLINKs
  • setclasscpumask() is documented but missing an MLINK