freebsd-dev/sbin
Kirk McKusick 90e29718cf Clarify when GEOM utilities exit with success or failure.
Historically, GEOM utilities (gpart(8), gstripe(8), gmirror(8),
etc) used the gctl_error() routine to report errors. If they called
gctl_error() they would exit with EXIT_FAILURE, otherwise they would
return with EXIT_SUCCESS. If they used gctl_error() to output an
informational message, for example when run with the -v (verbose)
option, they would mistakenly exit with EXIT_FAILURE. A further
limitation of the gctl_error() function was that it could only be
called once. Messages from any additional calls to gctl_error()
would be silently discarded.

To resolve these problems a new function, gctl_msg() has been added.
It can be called multiple times to output multiple messages. It
also has an additional errno argument which should be zero if it is
an informational message or an errno value (EINVAL, EBUSY, etc) if
it is an error. When done the gctl_post_messages() function should
be called to indicate that all messages have been posted. If any
of the messages had a non-zero errno, the utility will EXIT_FAILURE.
If only informational messages (with zero errno) were posted, the
utility will EXIT_SUCCESS.

Tested by:   Peter Holm
PR:          265184
MFC after:   1 week
2022-07-16 10:26:51 -07:00
..
adjkerntz adjkerntz(8): revert "detect extra jailed invokation to keep logs clean" 2022-06-23 21:46:08 +07:00
bectl bectl: push space-in-name check down into libbe 2022-04-02 21:04:31 -05:00
bsdlabel *: Do not use the no-op -r flag for bsdlabel(8) 2022-03-17 17:28:07 +01:00
camcontrol camcontrol(8): Fix typo in a source code comment 2022-03-28 19:36:01 +02:00
ccdconfig *: Do not use the no-op -r flag for bsdlabel(8) 2022-03-17 17:28:07 +01:00
clri
comcontrol
conscontrol
ddb
decryptcore
devd mixer: remove volume backwards compat, add % interpretation 2022-06-17 22:50:58 -05:00
devfs devfs.rules: Do not expose "log" in the default devfs rules. 2022-05-24 09:54:38 -04:00
devmatch devmatch: Properly ignore commented fields 2022-06-27 14:44:23 -06:00
dhclient dhclient: fix pcp:pcp cleanup failure 2022-06-17 09:10:52 +02:00
dmesg dmesg: Better wording from review 2022-05-07 09:55:40 -06:00
dump ufs: Rework shortlink handling to avoid subobject overflows 2022-01-02 20:55:36 +00:00
dumpfs
dumpon dumpon: warn if the configured netdump link is down 2022-05-14 10:27:54 -03:00
etherswitchcfg etherswitch: Add a new striptagingress port flag 2021-08-03 12:07:48 +02:00
fdisk
ffsinfo
fsck fsck(8): Fix typo 2022-01-12 13:52:23 +08:00
fsck_ffs Clean up comments in fsck.h. 2022-05-10 16:06:15 -07:00
fsck_msdosfs fsck_msdosfs: truncate directory entry when the head pointer is invalid. 2021-11-03 22:09:32 -07:00
fsdb Update fsdb(8) to reflect new structure of fsck_ffs(8). 2022-02-23 15:40:58 -08:00
fsirand
gbde
geom Clarify when GEOM utilities exit with success or failure. 2022-07-16 10:26:51 -07:00
ggate ggatec: Use ANSI C definition for init_initial_buffer_size. 2022-01-31 17:12:04 -08:00
growfs Correctly update fs_dsize in growfs(8) 2022-06-27 21:48:24 -07:00
gvinum GEOM: Introduce gctl_add_param() API. 2022-03-07 11:12:25 -05:00
hastctl
hastd Remove PAGE_SIZE from hastd 2022-06-17 10:36:17 +01:00
ifconfig ifconfig.8: cleanup reminiscence about long gone ppp(4) 2022-07-11 11:53:54 +07:00
init init(8): use proper boolean type for globals 2022-02-21 20:16:13 -04:00
ipf ipfilter: Support only jails in VNET 2022-07-07 07:53:45 -07:00
ipfw ipfw: add support radix tables and table lookup for MAC addresses 2022-06-04 19:12:29 +03:00
kldconfig
kldload kldload: Bring functionality in line with manual page 2022-06-17 16:53:28 +02:00
kldstat kldstat(8): style(9) fixes. 2021-12-07 11:40:22 +01:00
kldunload
ldconfig ldconfig: remove two symbols 2022-01-08 12:45:46 +02:00
md5 update external URLs 2022-02-05 08:19:56 +00:00
mdconfig md: Add MD_MUSTDEALLOC support 2021-09-11 20:04:52 +08:00
mdmfs
mknod
mksnap_ffs
mount mount: revert the active vnode reporting feature 2022-06-15 07:24:55 -07:00
mount_cd9660
mount_fusefs fusefs: use the fsname mount option if set 2022-04-29 11:10:03 -06:00
mount_msdosfs
mount_nfs mount_nfs.8: Update BUGS section for NFSv4.1/4.2 2022-07-03 13:37:23 -07:00
mount_nullfs Improve description of the nocache option. 2022-05-06 13:03:30 +02:00
mount_udf
mount_unionfs
natd natd: Remove uneeded in_cksum.h includes 2021-11-24 13:31:16 -05:00
newfs *: Do not use the no-op -r flag for bsdlabel(8) 2022-03-17 17:28:07 +01:00
newfs_msdos newfs_msdos: Fix warnings that arise when compiled for makefs 2022-05-10 17:26:50 -04:00
nfsiod pkgbase: Add nfsiod to the FreeBSD-nfs package 2021-08-06 14:37:35 +02:00
nos-tun
nvmecontrol Correct a typo in a string literal. 2022-06-07 21:48:59 +02:00
pfctl pfctl(8): Fix a typo in a source code comment 2022-07-16 13:48:30 +02:00
pfilctl
pflogd
ping ping: add missing test files to Makefile 2022-05-20 22:13:02 -05:00
ping6
quotacheck
rcorder
reboot Cross-reference nextboot(8) and freebsd-update(8) 2022-03-29 15:15:35 +02:00
recoverdisk
resolvconf
restore
route route: remove write-only struct hostent from getaddr() 2022-01-06 10:45:44 -05:00
routed Bump .Dd for recently modified manual pages 2022-06-27 18:20:03 +02:00
rtsol
savecore savecore: add an option to save a live minidump 2022-04-18 12:56:16 -03:00
sconfig pkgbase: Put sconfig in FreeBSD-utilities 2021-12-21 10:16:08 +01:00
setkey If setkey(8) is used without ipsec.ko loaded beforehand, 2022-05-05 19:02:29 +07:00
shutdown boottrace: annotate init and shutdown utilities 2022-02-21 20:16:07 -04:00
swapon swapon(8): adapt to the new swapoff(2) interface 2021-12-09 02:48:59 +02:00
sysctl sysctl.8: Reference sysctl(9) 2022-06-30 16:22:01 +02:00
tests
tunefs
umount umount(8): Remove a double word in a source code comment 2022-04-09 10:13:45 +02:00
veriexec Improve parameters handling in veriexec 2022-06-29 10:57:01 +02:00
zfsbootcfg
Makefile sbin: build ping if at least one of INET & INET6 is enabled 2021-11-28 13:05:39 -05:00
Makefile.amd64 Revert "amd64: Do not build sconfig" 2021-12-21 10:14:45 +01:00
Makefile.arm
Makefile.i386
Makefile.inc
Makefile.powerpc64