In conjunction with the release of Oracle Solaris 11.4 SRU36 in August, we also refreshed both the the main Oracle Solaris 11.4 documentation library and the Oracle Solaris 11.4 man pages on docs.oracle.com. As I did in 2019 and 2020, I’ve gone through the changes you can see in the man pages in this update, both providing a review of what’s changed in Solaris itself in the past year, and more information about existing Solaris behvaior we’ve improved the documentation for, so here are some of the highlights.

New man pages

posix_spawn_file_actions_addchdir(3C), posix_spawn_file_actions_addfchdir(3C)
New functions added to libc in 11.4.27.
uuid_unparse_lower(3UUID), uuid_unparse_upper(3UUID)
New functions added to libuuid in 11.4.27.
strerrordesc_np(3C), strerrorname_np(3C)
New functions added to libc in 11.4.30.
memory-reserve(8s)
New man page added in 11.4.27 to document service added in 11.4.1.
vtio(4d), vtioblk(4d), vtioentropy(4d), vtionet(4d), vtioscsi(4d)
New Virtio drivers added in 11.4.33.
identity(8s)
New man page added in 11.4.33 to document both existing services and new updates made to :cert instance in 11.4.33.

Renamed man pages

oawk(1)
New name for the old awk(1) man page in 11.4.33, with awk(1) set by the “awk” IPS mediator to point to oawk(1) or nawk(1) [default: nawk].

Removed man pages

llc2_autoconfig(1), llc2_config(1), llc2_stats(1), llc2(4d), llc2(5), llc2_loop(8)
Part of the removal of llc2 driver in 11.4.27.
fedfs(7), nsdb-convert(8), nsdb-list(8), nsdb-nces(8), nsdb-resolve-fsn(8), nsdb-update-nci(8), nsdbparams(8)
Part of the removal of FedFS in 11.4.27.

Updated man pages

History sections were added to many man pages, including:
ps(1), mmap(2), priocntl(2), getsockopt(3C), socket(3C), socket.h(3HEAD)
chmod(1)
Discussion of nosetuid and noexec mount options added to Notes.
cksum(1), sum(1)
Added recommendation to use digest(1) instead.
ctags(1)
State that tagsfile is not created if you use -v or -x options.
du(1), ls(1), ps(1), size(1), df(8), prstat(8), swap(8)
Added new --scale option for human-readable scaled output formats in 11.4.30.
diff(1)
Added diff(1g), patch(1g), and wdiff(1) to the See Also list.
gcore(1)
Added new -R option in 11.4.30 to read process pages into memory before stopping the process to dump core, thus reducing the amount of time the process is stopped.
kldd(1)
Added new -D option to override definition of $CPU in dependency names, in 11.4.36
mdb(1)
  • Expanded discussion of using breakpoints in dynamic objects (including PIE programs).
  • Added new -i flag to ::bp dcmd and immediate_breakpoints option to -o command line option in 11.4.30
  • Added new ::sleep, ::until, and ::while dcmds in 11.4.30
  • Added new MDB_radix* variables in 11.4.33
  • Added new -a flag to ::vars dcmd in 11.4.33
  • Added new MDB_LAST_EVENT variable in 11.4.36
  • Added new -h flag to ::sysbp, ::sigbp, and ::fltbp dcmds in 11.4.36
mv(1)
Added new -n and -u options to control overwriting of existing target files in 11.4.30
newtask(1)
Added new -o option to output new task id to a file in 11.4.30.
patch(1)
Added note that this man page covers /usr/sunos/bin/patch and that /usr/bin/patch has been GNU patch since Solaris 11.0.
pkg(1)
Added new config/pkg_extra_args (in 11.4.30), config/reboot-check-hook (in 11.4.30), and config/shutdown-grace-period (in 11.4.36) SMF properties for the Periodic Package Update Service (svc:/system/auto-update:default).
ps(1)
radadrgen(1)
Added new -J & --java-method-names options in 11.4.33
sar(1), sar(8)
Added info about StatsStore as new alternative
sort(1)
Added TMPDIR to Environment Variables and the description of -T option.
sstore(1)
  • Added minutes, hours, days and weeks modifiers for -i step option in 11.4.27.
  • Allowed -p & -i options to be used together for sstore export in 11.4.36.
uname(1)
Added -V & --virtual-environment options to print virtualization info, and add virtualization info to -a output, in 11.4.36.
Intro(2)
  • Error strings updated to match those returned by strerror(3C).
  • Error descriptions updated for current usage.
  • Entries added for error values 50 ECKSUM, 51 EFRAGS, 52 EXFULL, 53 ENOKEY, 58 EOWNERDEAD, 59 ENOTRECOVERABLE, 64 ENONET, 66 EREMOTE, 67 ENOLINK, 68 EADV, 69 ESRMNT, 70 ECOMM, 72 ELOCKUNMAPPED, 73 ENOTACTIVE, 74 EMULTIHOP.
  • Added privileges(7) and resource-controls(7) to the See Also list.
close(2)
Added warning about thread-unsafety of first example code snippet. Added fdopen() to Usage note about when to use fclose() instead of close().
fchownat(2)
Added Usage section explaining that use of a null path argument is a non-standard extension allowed by Solaris.
mknod(2)
Clarified the Usage section, including naming the required privilege for non-FIFO usage.
mmap(2), shmat(2)
Added information on how these interact with ASLR.
open(2), pipe2(2)
Added new O_NOSTDFD in 11.4.27.
shmop(2)
Added info about updating shm_nattch and timestamps.
stat(2)
Added info about S_IF* and S_IS* macros to st_mode description. Added Note about A_CRTIME attribute for file creation timestamp.
Multiple socket and naming API man pages:
Update text and references to prefer getaddrinfo() and getnameinfo() over previous generation APIs.
bind(3C), connect(3C), recvmsg(3C), recvmmsg(3C), sendmsg(3C), sendmmsg(3C), socket.h(3HEAD)
Added information about the effects of the __USE_SUNOS_SOCKETS__ #define.
ethers(3C), ethers(5)
Added Usage note warning that most hosts will not have an /etc/ethers file, relying on ARP instead.
getifaddrs(3C)
Added more information on the ifa_flags and ifa_ifu members of the returned struct ifaddrs.
getpeername(3C), getsockname(3C)
Added information on the requirements for the buffer provided by the caller.
rcmd(3C), rexec(3C)
Added Usage section explaining why these functions should no longer be used.
netdb.h(3HEAD)
Added description of addrinfo structure, AI_* and NI_* flags, and EAI_* error codes. Added warning that IPPORT_RESERVED constant does not reflect ipadm smallest-nonpriv-port setting, which takes precedence.
socket.h(3HEAD)
Added description of sockaddr_storage structure and various Solaris extensions to the socket options. Split standard vs. historical interfaces into separate sections.
uuid_generate(3UUID)
Clarified how uuid_generate() works, including changes in 11.4.15.
inet(4P)
Added pointer to inet6(4P) for IPv6 equivalent. Updated subnet discussion to cover modern subnets instead of class A/B/C addresses. Updated reserved port discussion to reflect privileges and ipadm properties.
inet6(4P)
Updated reserved port discussion to reflect privileges and ipadm properties.
audit_class(5)
Documented the split of the audit.class file into the base file and audit_class.system in 11.4.33.
networks(5)
Added LDAP information and updated to reflect modern usage.
nfs(5), statd(8)
Added statd_servers property in 11.4.36.
nsswitch.conf(5)
Explained difference between database names used in old file vs. SMF properties. Added Examples demonstrating the use of svccfg to display and change the configuration. Added Note about use of getent vs. dig, nslookup, ldaplist, etc.
resolv.conf(5)
Added Examples demonstrating the use of svccfg to display and change the configuration. Updated Environment Variables section to note that they are not usually effective due to the use of nsswitch.conf and nscd.
smb(5)
Updated default value of restrict_anonymous to true in 11.4.30.
ypfiles(5), nis(7)
Added warnings that NIS is obsolete and may be removed in the future.
ad(7)
Changed instructions to use smbadm(8) instead of kclient(8) to join an Active Directory domain in 11.4.27.
filesystem(7)
Added info about /var/share/user & /tmp/volatile-user.
pam_krb5(7)
Added details about krb5_first and krb5_optional pam policies.
pam_list(7)
Added auser option in 11.4.35.
privileges(7)
Added PRIV_IPC_MRP_ACCESS in 11.4.27 for privilege added in 11.4.1.
resource-controls(7)
Added Notes section about active projects and how to update them.
admhist(8)
Added new -u option in 11.4.36.
archiveadm(8)
Added reminder under create subcommand to ensure pcfs is included in the fs-allowed property for non-global zones in 11.4.33.
beadm(8)
Added new pool_version property in 11.4.30, to allow warning when a zpool upgrade would make BE’s become unbootable because they don’t know how to read that pool version.
df(8)
 
Added new -H option for human-readable output formats scaled by factors of 1000 instead of 1024 in 11.4.30.
dumpadm(8)
Documented the -D flag to enable or disable deferred dump and added deferred dump status to default output in 11.4.33.
gssd(8)
Documented the config/ccache_patterns SMF property (available since 11.4.24).
idmap(8)
Added new -t option to the show subcommand to trace LDAP transactions in 11.4.27.
iostat(8)
Added new -w flag for wide display format in 11.4.33.
kmipcfg(8)
Added new info subcommand in 11.4.33.
ldmd(8)
Added new ldmd/migration_mem_iterations SMF property in 11.4.33.
prtconf(8)
Documented -U option to print device usage information (available in 11.4.0 and later).
rad(8)
Added new SMF properties for TLS client certificate support in 11.4.33.
smbadm(8)
Added new change-dc and show-dcs subcommands in 11.4.30.
svcbundle(8)
Added new timeout, start-timeout, stop-timeout, refresh-timeout, delay, and jitter properties in 11.4.27.
sxadm(8)
Added TAA_NO and TSX_DISABLE security extensions to mitigate CVE-2019-11135 in 11.4.25. Added UMIP (User-Mode Instruction Prevention) extension in 11.4.30.
sysadm(8)
Added -w flag for evacuate subcommand in 11.4.30, to overwrite zone configuration on migration.
useradd(8), usermod(8), roleadd(8), rolemod(8)
Added new zfshome default value setting and new -z option to control whether or not user homedirs are created as separate ZFS datasets in 11.4.30.
vmstat(8)
Added new -w flag for wide display format in 11.4.33.
zfs_encrypt(8)
Added support for encryption on Solaris Cluster Global-ZFS file systems in 11.4.33.
zonecfg(8)
Added new description property in 11.4.36.
zpool(8)
uiomove(9f), ureadc(9f), uwritec(9f)
Added notes warning that driver defined locks should not be held across calls to these functions.